我只是关于python及其语法的一些信息性问题。我有5000行的CSV文件,我读它,将它打印到屏幕这样python阅读csv文件
for i in range(5):
print csv_file.readline(),
那有什么尾随逗号呢?我的意思是我可以看到它对输出的影响,但我想知道的是它为什么这样做。
每次运行此代码时,它都会读取五行的下一个增量。我觉得好奇,因为我会认为它总是会读取相同的五行。所以python以某种方式跟踪它在文件中的位置?
感谢您的任何见解。
我只是关于python及其语法的一些信息性问题。我有5000行的CSV文件,我读它,将它打印到屏幕这样python阅读csv文件
for i in range(5):
print csv_file.readline(),
那有什么尾随逗号呢?我的意思是我可以看到它对输出的影响,但我想知道的是它为什么这样做。
每次运行此代码时,它都会读取五行的下一个增量。我觉得好奇,因为我会认为它总是会读取相同的五行。所以python以某种方式跟踪它在文件中的位置?
感谢您的任何见解。
实施例:
for i in range(3):
print i
print "---"
for i in range(5):
print i,
结果:
0
1
2
---
0 1 2 3 4
为 “打印” 的关键字的正常行为是,它增加了什么被打印所以后换行符 “\ n” 个下一份印刷的声明已在新的一行上。但是,您的csv文件在每行的末尾还有“\ n”。所以你最初有“\ n \ n”。逗号表示不应将新行字符添加到打印语句中,因此您只能从csv文件获取换行符。
只要线程正在执行且文件句柄未关闭,文件句柄(handle = open('myFile'))就会跟踪文件位置。一旦使用“csv_file.close()”并重新打开文件,它将从文件的开头开始。如果脚本完成执行并关闭,它还将关闭所有打开的文件句柄,随后的执行将从文件的开始处开始。我唯一能想到的不是这种情况,如果你从一个继续运行的不同线程获取“csv_file”。
非常感谢你对此非常清楚的解释。 – MJMacarty