Uso da instrução with para arquivos
Garanta que os arquivos sejam fechados automaticamente usando gerenciadores de contexto.
Uso da instrução with para arquivos é uma aula grátis de Python Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Python Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Python Academy inclui 4 aulas no total.
Introdução
A instrução with
# with open('data.txt') as f:
# content = f.read()
# f is now closed
print('with demo')Por que with é melhor que try/finally
# Equivalent to:
# f = open('file.txt')
# try:
# content = f.read()
# finally:
# f.close()
print('comparison demo')Vários arquivos
# with open('in.txt') as src, open('out.txt','w') as dst:
# for line in src:
# dst.write(line.upper())
print('multi-file demo')Protocolo de gerenciador de contexto
# f.__enter__() opens
# f.__exit__() closes
print('protocol demo')Leitura e processamento
lines = [' hello \n', ' world \n']
cleaned = [l.strip() for l in lines if l.strip()]
print(cleaned)Escrita com with
# with open('out.txt', 'w') as f:
# for i in range(10):
# f.write(f'{i}\n')
print('write with demo')Verificando se um arquivo existe
import os
print(os.path.exists('/tmp'))
print(os.path.exists('/nonexistent'))Erros de open()
try:
with open('/nonexistent.txt') as f:
pass
except FileNotFoundError as e:
print('File not found:', e)StringIO para arquivos na memória
from io import StringIO
buf = StringIO('line1\nline2\n')
for line in buf:
print(line.rstrip())Módulo tempfile
import tempfile
with tempfile.NamedTemporaryFile(mode='w', suffix='.txt', delete=True) as f:
f.write('temp data')
print(f.name)Verificação rápida
Recapitulação
Continue avançando
Perguntas Frequentes
A aula “Uso da instrução with para arquivos” é grátis?
Sim — o texto completo de “Uso da instrução with para arquivos” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Python Academy, atualize para CoddyKit PRO. O curso de Python Academy inclui 4 aulas no total.
O que vou aprender em “Uso da instrução with para arquivos”?
Garanta que os arquivos sejam fechados automaticamente usando gerenciadores de contexto. Você pratica Python Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Python Academy?
Nenhuma experiência prévia é necessária. Python Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.
Quanto tempo leva a aula “Uso da instrução with para arquivos”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Python Academy?
Sim. Cada aula de Python Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Abertura e leitura de arquivos
- Escrita e adição a arquivos
- Uso da instrução with para arquivos
- Trabalho com caminhos de arquivos usando pathlib