3.1 Criação de arquivo
Arquivos são criados automaticamente ao serem abertos no modo de gravação ('w') ou adição ('a'). Se o arquivo já existir, o modo 'w' sobrescreve seu conteúdo, enquanto o modo 'a' adiciona dados ao final do arquivo.
Exemplo de criação de arquivo
file = open('example.txt', 'w') # Abre o arquivo para gravação, criando-o se ele não existir
file.write("This is a new file.\n")
file.close()
Neste exemplo, o arquivo example.txt é criado (se não existir) e uma string "This is a new file.\n" é gravada nele.
Você pode criar um arquivo completamente vazio — basta abri-lo para gravação e fechá-lo imediatamente.
Exemplo de criação de arquivo vazio
file = open('example.txt', 'w')
file.close()
Observe que, se você abrir para gravação um arquivo existente, todo o seu conteúdo será apagado.
3.2 Gravação em arquivo
Existem dois métodos populares para gravar dados em um arquivo — write() e writelines().
Método write()
O método write() escreve uma string em um arquivo. Se o arquivo estiver aberto no modo de gravação ('w'), seu conteúdo será apagado antes de gravar os novos dados. Se o arquivo estiver aberto no modo de adição ('a'), novos dados serão adicionados ao final do arquivo.
Exemplo de uso do write():
# Abertura do arquivo no modo de gravação
file = open('example.txt', 'w')
file.write("Hello, World!\n")
file.write("This is a test file.\n")
file.close()
Método writelines()
O método writelines() aceita uma lista de strings e grava elas no arquivo. Ele não adiciona automaticamente os caracteres de nova linha, então você precisa incluí-los nas strings.
Exemplo de uso do writelines():
lines = ["First line.\n", "Second line.\n", "Third line.\n"]
# Abertura do arquivo no modo de gravação
file = open('example.txt', 'w')
file.writelines(lines)
file.close()
Codificação de arquivo
Você pode especificar a codificação de um arquivo de texto ao ler ou gravar nele. Isso é feito com o uso do parâmetro nomeado encoding.
Exemplo:
# Abertura do arquivo para gravação com codificação UTF-8
file = open('example_utf8.txt', 'w', encoding='utf-8')
file.write("Texto em russo.\n")
file.write("Mais texto em UTF-8.\n")
file.close()
Vamos discutir diferentes codificações de arquivos e textos mais tarde, mas já é útil saber que esse parâmetro existe e seu uso pode te livrar de muitos problemas.
3.3 Adição de dados em arquivo
Adicionar dados ao final de um arquivo é tão simples quanto gravar dados nele. Você só precisa especificar o modo de adição ('a') ao abrir o arquivo, e todo o resto acontecerá automaticamente.
Aqui estão alguns exemplos:
Adicionar linhas ao final do arquivo
Este exemplo mostra como abrir um arquivo no modo de adição ('a') e adicionar algumas linhas ao seu final.
file = open('example.txt', 'a') # Abertura do arquivo para adicionar dados
file.write("This is a new line added to the file.\n")
file.write("Another line is appended.\n")
file.close() # Fechamento do arquivo
Adicionar uma lista de linhas ao final do arquivo
Este exemplo mostra como usar o método writelines() para adicionar uma lista de linhas ao final do arquivo.
lines = [
"Appending first line from list.\n",
"Appending second line from list.\n",
"Appending third line from list.\n"
]
file = open('example.txt', 'a') # Abertura do arquivo para adicionar dados
file.writelines(lines) # Adicionando lista de linhas
file.close() # Fechamento do arquivo
Adicionar uma linha com especificação de codificação
Este exemplo mostra como abrir um arquivo no modo de adição com especificação de codificação (por exemplo, UTF-8) e adicionar uma linha.
# Abertura do arquivo para adicionar dados com especificação de codificação
file = open('example_utf8.txt', 'a', encoding='utf-8')
file.write("Adicionando linha utilizando UTF-8.\n")
file.write("Outra linha foi adicionada.\n")
file.close() # Fechamento do arquivo
Como você pode ver, é bem simples.
GO TO FULL VERSION