Python CSV读取器:截断文件的开头?前44797行缺失

2024-09-30 18:16:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个.csv文件,我想读Python(3.x)使用csv包。但是,程序会截断文件的开头(前44797行)。你知道吗

有问题的.csv文件可以从以下链接下载:https://www.kaggle.com/dgomonov/new-york-city-airbnb-open-data/downloads/new-york-city-airbnb-open-data.zip/3

file = "C:\\Users\\Owner\\Pictures\\Camera Roll\\new-york-city-airbnb- 
open-data\\AB_NYC_2019.csv"
rowsn = []
coln = []
with open(file, encoding="utf8") as csvfile:
    csvreader = csv.reader(csvfile)
    coln.append(0)
    for row in csvreader:
        rowsn.append(row)
        print("Appending" + str(row))
    for q in rowsn:
        for r in q:
            print(r, end="        ")
        print("\n")

我希望整个文件能一行一行地打印在终端上。但是,前44797行不会出现在屏幕上。请帮忙。 谢谢。你知道吗


Tags: 文件csvincitynewfordataopen
1条回答
网友
1楼 · 发布于 2024-09-30 18:16:52

事实上,你可以打破并看到第一行意味着你的控制台输出滚动太快。你知道吗

保存输出的shell有一个大约4098行的缓冲区。如果打印50k行,则第一行(50000-4098)的滚动速度非常快,您看不到他们。那个缓冲区只保存最后4098行,所以您只能向后滚动到目前为止。你知道吗

如果你真的想浏览500k行,给自己时间阅读:

for linecount, q in enumerate(rowsn,1):
    for r in q:
        print(r, end="        ")
    print("\n")
    if not linecount % 4000:         # every 4000 lines, ask for return press
        intput("Hit return...")

现在你要按回车键126次左右。。。或者,您可以研究如何扩大控制台的缓冲区—对于默认的windows控制台,您可以在此处获得更多提示:How to change Screen buffer size in Windows Command Prompt from batch script

相关问题 更多 >