2024-05-06 06:44:01 发布
网友
当我在下面的Python Shell中空闲运行时:
f = open(r"H:\Test\test.csv", "rb") for line in f: print line #this works fine
但是,当我第二次运行以下命令时:
因为您已经浏览了CSV文件,迭代器已经用完了。你需要在第二个循环之前重新打开它。在
您可以从变量中的文件中读取数据,然后可以在脚本中任意次数地迭代该数据。这比来回做seek要好。在
seek
f = open(r"H:\Test\test.csv", "rb") data = f.readlines() for line in data: print line for line in data: print line
输出:
这不起作用,因为您已经在第一次查找文件的末尾。您需要倒带(使用.seek(0))或重新打开文件。在
.seek(0)
其他一些提示:
'rU'
'rb'
with
一。在
with open(r"H:\Test\test.csv", "rU") as f: for line in f: ...
因为您已经浏览了CSV文件,迭代器已经用完了。你需要在第二个循环之前重新打开它。在
您可以从变量中的文件中读取数据,然后可以在脚本中任意次数地迭代该数据。这比来回做
seek
要好。在输出:
^{pr2}$这不起作用,因为您已经在第一次查找文件的末尾。您需要倒带(使用
.seek(0)
)或重新打开文件。在其他一些提示:
'rU'
模式打开文件,而不是'rb'
。'rU'
是通用换行模式,它将处理来自具有不同行结尾的平台的源文件。在with
,因为即使在出现错误的情况下,它也会为您清理句柄。例如:一。在
相关问题 更多 >
编程相关推荐