CodeGym /Cursos /Python SELF PT /Gravação de dados em arquivo

Gravação de dados em arquivo

Python SELF PT
Nível 21 , Lição 2
Disponível

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.

Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION