Escrever uma lista para um ficheiro com Python

Syed Moiz Haider 10 outubro 2023
  1. Usar um laço para escrever uma lista a um ficheiro em Python
  2. Utilize o módulo Pickle para escrever uma lista para um ficheiro em Python
  3. Utilize join() Método para escrever uma lista para um ficheiro
Escrever uma lista para um ficheiro com Python

Este tutorial explica como escrever uma lista para um ficheiro em Python. Uma vez que existem múltiplas formas de escrever uma lista para um ficheiro, o tutorial também lista vários códigos de exemplo para os explicar melhor.

Usar um laço para escrever uma lista a um ficheiro em Python

Utilizar um laço para escrever uma lista para um ficheiro é uma abordagem muito trivial e muito utilizada. Um laço é utilizado para iterar sobre os itens da lista, e o método write() é utilizado para escrever itens da lista para o ficheiro.

Utilizamos o método open() para abrir o ficheiro de destino. O modo de abertura do ficheiro é w que significa write.

Um código de exemplo é dado abaixo:

listitems = ["ab", "cd", "2", "6"]

with open("abc.txt", "w") as temp_file:
    for item in listitems:
        temp_file.write("%s\n" % item)
file = open("abc.txt", "r")
print(file.read())

Resultado:

{'6','2', 'ab', 'cd'}

Para Python 2.x, também se utiliza a seguinte abordagem:

listitems = ["ab", "cd", "2", "6"]

with open("xyz.txt", "w") as temp_file:
    for item in listitems:
        print >> temp_file, item

Ambos os códigos resultarão na escrita de uma lista para um ficheiro com Python.

Utilize o módulo Pickle para escrever uma lista para um ficheiro em Python

O módulo Pickle de Python é utilizado para serializar ou de-serializar uma estrutura de objectos Python. Se se quiser serializar uma lista para utilização posterior no mesmo ficheiro Python, pickle poderia ser utilizado. Como o módulo pickle implementa protocolos binários, o ficheiro também deve ser aberto no modo de escrita binária - wb.

O método pickle.dump() é utilizado para escrever uma lista para um ficheiro. Tem como parâmetros a lista e referência do ficheiro.

Um código de exemplo para esta abordagem é dado como:

import pickle

listitems = ["ab", "cd", "2", "6"]
with open("outputfile", "wb") as temp:
    pickle.dump(listitems, temp)
with open("outfile", "rb") as temp:
    items = pickle.load(temp)

print(items)

Resultado:

{'ab','cd', '6', '2'}

Utilize join() Método para escrever uma lista para um ficheiro

Outra abordagem mais directa para escrever uma lista para um ficheiro em Python é a utilização do método join(). Este método toma os itens da lista como entrada.

Um código de exemplo para utilizar este método é mostrado abaixo:

items = ["a", "b", "c", "d"]

with open("outputfile", "w") as opfile:
    opfile.write("\n".join(items))

Utilizar o módulo JSON para escrever uma lista para um ficheiro

A utilização do módulo pickle é muito específica em Python. O JSON torna os diferentes programas mais eficientes e fáceis de compreender. O módulo JSON é utilizado para escrever tipos mistos de variáveis para um ficheiro.

Utiliza o método dump() que toma uma lista de elementos e referências ao ficheiro como entrada.

Um código de exemplo é dado como:

import json

itemlist = [21, "Tokyo", 3.4]
with open("opfile.txt", "w") as temp_op:
    json.dump(itemlist, temp_op)

print(templist)

Resultado:

[21, "Tokyo", 3.4]
Syed Moiz Haider avatar Syed Moiz Haider avatar

Syed Moiz is an experienced and versatile technical content creator. He is a computer scientist by profession. Having a sound grip on technical areas of programming languages, he is actively contributing to solving programming problems and training fledglings.

LinkedIn

Artigo relacionado - Python List

Artigo relacionado - Python File