CSV阅读器无法读取整个文件

时间:2017-05-29 19:47:43

标签: python file csv

我已经查看了此问题的先前答案,但在每个场景中,提问者都在询问他们对文件所做的具体事情,但即使我没有,也会出现问题。

我有一个27,204行的.csv文件。当我打开python解释器时:

$twitter_array[0]->name;

然后我只看到显示给我的文件的最后三分之一。

3 个答案:

答案 0 :(得分:1)

尝试以下代码

import csv

fname = 'btc_usd1hour.csv'
with open(fname, newline='') as f:
    reader = csv.reader(f)
    for row in reader:
        print(row)

如果没有样品,很难说出问题所在。我想如果您添加newline=''来打开文件,问题就会被删除。

使用with构造自动关闭文件。如果不需要进一步说明,请使用文件对象f名称。将文件名存储到fname以便将来修改更容易(并且还可以轻松复制以后程序的代码片段)。

olisch可能是正确的,控制台刚刚滚动得太快,你看不到结果。您可以将结果写入另一个文本文件,如下所示:

with open(fname, newline='') as fin,\
     open('output.txt', 'w') as fout:
    reader = csv.reader(fin)
    for row in reader:
        fout.write(repr(row) + '\n')

repr函数将row列表转换为字符串表示print调用内部函数,因此您将获得与屏幕上观察到的结果相同的结果。

答案 1 :(得分:1)

尝试一下,在我工作:



             with open(name) as csvfile:
                reader = csv.DictReader(csvfile)
                for row in reader:
                  print(row)




参考:

https://docs.python.org/3.6/library/csv.html#csv.DictReader

答案 2 :(得分:0)

也许您的回滚缓冲区只是为了查看整个列表?

一般来说,你的csv.reader调用应该可以正常工作,除非你的27k行不是很长,所以你可能能够击中任何64位边界,这是非常罕见的。

len(o)可能会很有趣。