Python:
Escrevendo um arquivo de texto
Como Fazer:
Usando a Função Nativa open()
A função nativa open()
do Python é a maneira mais comum de escrever em arquivos. A função permite especificar o modo no qual o arquivo é aberto - ‘w’ para escrever (sobrescrevendo), ‘a’ para anexar e ‘w+’ para escrever+ler.
# Escrevendo em um arquivo novo ou substituindo um arquivo existente
with open('example.txt', 'w') as file:
file.write("Olá, Mundo!\n")
# Anexando a um arquivo
with open('example.txt', 'a') as file:
file.write("Anexando mais texto.\n")
# Lendo o arquivo para verificar
with open('example.txt', 'r') as file:
print(file.read())
Saída de Exemplo:
Olá, Mundo!
Anexando mais texto.
Usando pathlib.Path
Para uma abordagem mais orientada a objetos, a classe Path
do módulo pathlib
oferece um método para escrever em arquivos. Este é um método popular para bases de código Python mais recentes.
from pathlib import Path
# Escrevendo/Substituindo um arquivo
Path('example2.txt').write_text("Este é o exemplo 2.\n")
# Lendo o arquivo para verificar
print(Path('example2.txt').read_text())
# Note: `Path.write_text` sempre sobrescreve o conteúdo do arquivo.
# Para anexar, você precisará abrir o arquivo como mostrado na seção anterior.
Saída de Exemplo:
Este é o exemplo 2.
Bibliotecas de Terceiros
Para operações de arquivo mais complexas, bibliotecas de terceiros como pandas
(para arquivos CSV, Excel) podem ser um grande recurso. Aqui está um rápido exemplo de como escrever um DataFrame em um arquivo CSV usando o pandas
, demonstrando sua utilidade além de simples arquivos de texto.
# Este exemplo requer pandas: pip install pandas
import pandas as pd
# Criando um DataFrame simples
data = pd.DataFrame({'Coluna1': [1, 2, 3], 'Coluna2': ['A', 'B', 'C']})
# Escrevendo DataFrame em um arquivo CSV
data.to_csv('example.csv', index=False)
# Lendo o CSV para verificar
print(pd.read_csv('example.csv'))
Saída de Exemplo:
Coluna1 Coluna2
0 1 A
1 2 B
2 3 C
Usando esses métodos, programadores Python podem gerenciar efetivamente operações de arquivo, atendendo a necessidades de manipulação de dados tanto simples quanto complexas.