Context Manager com contextlib.contextmanager
This commit is contained in:
@@ -1 +1,3 @@
|
||||
Linha 1
|
||||
Linha 2
|
||||
Linha 3
|
||||
|
||||
22
aula150.py
Normal file
22
aula150.py
Normal file
@@ -0,0 +1,22 @@
|
||||
# Context Manager com função - Criando e Usando gerenciadores de contexto
|
||||
from contextlib import contextmanager
|
||||
|
||||
|
||||
@contextmanager
|
||||
def my_open(caminho_arquivo, modo):
|
||||
try:
|
||||
print('Abrindo arquivo')
|
||||
arquivo = open(caminho_arquivo, modo, encoding='utf8')
|
||||
yield arquivo
|
||||
except Exception as e:
|
||||
print('Ocorreu erro', e)
|
||||
finally:
|
||||
print('Fechando arquivo')
|
||||
arquivo.close()
|
||||
|
||||
|
||||
with my_open('aula150.txt', 'w') as arquivo:
|
||||
arquivo.write('Linha 1\n')
|
||||
arquivo.write('Linha 2\n', 123)
|
||||
arquivo.write('Linha 3\n')
|
||||
print('WITH', arquivo)
|
||||
1
aula150.txt
Normal file
1
aula150.txt
Normal file
@@ -0,0 +1 @@
|
||||
Linha 1
|
||||
Reference in New Issue
Block a user