Я намагаюся проаналізувати файл з роздільниками труб і передавати значення в список, щоб пізніше я міг друкувати вибіркові значення зі списку.
Файл виглядає так:
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 рядків.