我试图解析管道分隔的文件和值传递到一个列表,这样,以后我可以从列表中选择打印值。
该文件是这样的:
name|age|address|phone|||||||||||..etc
它拥有超过100列。
我试图解析管道分隔的文件和值传递到一个列表,这样,以后我可以从列表中选择打印值。
该文件是这样的:
name|age|address|phone|||||||||||..etc
它拥有超过100列。
如果你解析一个非常简单的文件,该文件将不包含任何|
在实际的字段值的字符,你可以使用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()
编辑:解析表格数据更健壮的方法是使用csv
库作为下面提到 。
使用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']
import pandas as pd
pd.read_csv(filename,sep="|")
这将存储在数据帧的文件。 对于每一列,你可以申请条件来选择所需的值进行打印。 它需要一个很短的时间来执行。 我试着用111047点的行。