我想从我的号码表中读取一些数据。第一行是“标题”行,包含每一列的名称,每隔一行包含数据。我用python编写了一个简单的程序来读取此内容,但是每次运行此代码时,都会得到:
File "dataReader.py", line 11, in <module>
for row in fileReader:
_csv.Error: line contains NULL byte
我试图对每一行进行编码,但没有帮助。下面,我经过我的代码(在此代码中,我没有调用utf_8_encoder函数,但是即使我尝试使用它-我仍然有错误)。我想从文件中逐行读取,并将其作为字符串读取。我该怎么办?
import csv
import codecs
def utf_8_encoder(unicode_csv_data):
for line in unicode_csv_data:
yield line.encode('utf-8')
if __name__ == "__main__":
dataFile = open("file.numbers", 'rU')
fileReader = csv.reader(dataFile)
for row in fileReader:
print row
这里也是我的文件样本:
您已将文件另存为.numbers
文件,而不是CSV文件。 csv模块用于读取CSV(逗号分隔值)文件,并且无法解释.numbers
文件。
要使程序正常工作,请将数据另存为CSV文件。
如何在python中读取新版本的Mac文件,如.numbers,.key,.pages?