/ / Розбір файлу, розділеного на труби, в python - python, python-3.x, розбір, розділені значеннями

Аналіз файлу, розділеного на трубку, в python - python, python-3.x, розбір, роздільники-значення

Я намагаюся проаналізувати файл з роздільниками труб і передавати значення в список, щоб пізніше я міг друкувати вибіркові значення зі списку.

Файл виглядає так:

name|age|address|phone|||||||||||..etc

Він має більше 100 стовпців.

Відповіді:

14 за відповідь № 1

Якщо ви проаналізуєте дуже простий файл, який не містить будь-якого вмісту | символи у фактичних значеннях поля, які можна використовувати split:

fileHandle = open("file", "r")

for line in fileHandle:
fields = line.split("|")

print(fields[0]) # prints the first fields value
print(fields[1]) # prints the second fields value

fileHandle.close()

21 для відповіді № 2

Використовувати csv бібліотека.

Спершу зареєструйте свій діалект:

import csv
csv.register_dialect("piper", delimiter="|", quoting=csv.QUOTE_NONE)

Потім скористайтеся діалогом у файлі:

with open(myfile, "rb") as csvfile:
for row in csv.DictReader(csvfile, dialect="piper"):
print row["name"]

3 для відповіді № 3
import pandas as pd

pd.read_csv(filename,sep="|")

Це дозволить зберегти файл у файловому діапазоні. Для кожного стовпця можна застосувати умови, щоб вибрати необхідні значення для друку. Для виконання потрібно дуже короткий час. Я спробував з 111047 рядків.