Ads by ProfitSence
Close

Leia uma linha de arquivos por linha e armazene em Python

Last Updated on Sábado 8º out 2022

Use uma das seguintes maneiras de ler uma linha de arquivo por linha e armazenar em uma lista

  • Usando o readlines e strip método
  • Usando o rstrip()
  • Usando o for Loop e strip() método
  • Usando o splitlines()
  • Usando o pathlib lib e splitlines() método
  • Usando o List Comprehension

Vamos test.txt arquivo contém nome

			
					['Paulo Rocha','Valdomiro Bezerra','Teodoro Kanashiro','Jurandir Passos','Julio Carvalho','Ângelo','Lorenzo','Kléber Takeda ','Túlio Vargas ','Jonas da Silva',]

			
	

Nosso propósito é ler cada linha (que neste caso contém nomes) uma a uma e armazená-las em uma lista.

Usando o readlines e strip método

  • readlines() é um método embutido no Python usado para ler uma linha de arquivo por linha e, em seguida, armazenar cada linha em uma lista.
  • string.strip(): Remove espaços brancos principais e de rastreamento, incluindo caracteres newline 'n' e caracteres tabulares 't'.

Vamos usar o método 'readlines()' para ler a linha de arquivos por linha, enquanto o método 'strip()' é usado para se livrar do novo caractere da linha ''n'' enquanto armazena os elementos da lista.

			
					with open('test.txt') as f:
    content = f.readlines()
# você também pode querer remover caracteres whitespace como 'n' no final de cada linha
li = [x.strip() for x in content]
print(li)

			
	
			
					['Paulo Rocha','Valdomiro Bezerra','Teodoro Kanashiro','Jurandir Passos','Julio Carvalho','Ângelo','Lorenzo','Kléber Takeda ','Túlio Vargas ','Jonas da Silva',]

			
	

Usando o line.strip()

string.rstrip() é uma função incorporada em Python que remove todos os espaços brancos à direita da string (espaços brancos em pé). Assim, podemos usá-lo para remover ou separar elementos de cada linha e, em seguida, armazená-los em uma lista usando a notação []

			
					with open('test.txt') as f:
    lines = [line.rstrip() for line in f]
print(lines)

			
	
			
					['Paulo Rocha','Valdomiro Bezerra','Teodoro Kanashiro','Jurandir Passos','Julio Carvalho','Ângelo','Lorenzo','Kléber Takeda ','Túlio Vargas ','Jonas da Silva',]

			
	

Usando o for Loop e strip() método

Use um loop para iterar sobre as linhas do arquivo um por um e, em seguida, apêndice-os a uma lista usando a função append(). A função strip() que nos permite tirar o caractere newline.

			
					with open("test.txt") as file_in:
    lines = []
    for line in file_in:
        lines.append(line.strip('n'))
    print(lines)

			
	
			
					['Paulo Rocha','Valdomiro Bezerra','Teodoro Kanashiro','Jurandir Passos','Julio Carvalho','Ângelo','Lorenzo','Kléber Takeda ','Túlio Vargas ','Jonas da Silva',]

			
	

Usando o splitlines()

splitlines() é uma função embuttililhada em Python que é usada para dividir uma sequência.

			
					with open('test.txt', 'r') as infile:
    data = infile.read()

li = data.splitlines()
print(li)

			
	
			
					['Paulo Rocha','Valdomiro Bezerra','Teodoro Kanashiro','Jurandir Passos','Julio Carvalho','Ângelo','Lorenzo','Kléber Takeda ','Túlio Vargas ','Jonas da Silva',]

			
	

Usando o pathlib lib e splitlines() método

  • A biblioteca pathlib foi introduzida no Python 3.4 e tem um método útil conhecido como 'read_text()' que é uma boa maneira de ler o arquivo sem ter que se preocupar em abri-lo ou fechá-lo.
  • A função 'splitlines' transforma o conteúdo do arquivo em uma lista contendo os elementos da linha de arquivo por linha.
			
					from pathlib import Path
p = Path('test.txt')
lines = p.read_text().splitlines()
print(lines)

			
	
			
					['Paulo Rocha','Valdomiro Bezerra','Teodoro Kanashiro','Jurandir Passos','Julio Carvalho','Ângelo','Lorenzo','Kléber Takeda ','Túlio Vargas ','Jonas da Silva',]

			
	

Usando o List Comprehension

List Comprehension é uma maneira compacta de criar listas.

			
					print([line.rstrip() for line in open('test.txt')])

			
	
			
					['Paulo Rocha','Valdomiro Bezerra','Teodoro Kanashiro','Jurandir Passos','Julio Carvalho','Ângelo','Lorenzo','Kléber Takeda ','Túlio Vargas ','Jonas da Silva',]