这感觉像是一个非常基本的问题,但我在其他地方找不到任何提及。我是一个 Python 初学者。
当我使用 DictReader 读取数据,然后使用字典时,我无法再次引用它。例如,使用以下代码:
#!/usr/bin/python
import csv
import cgi
import cgitb
cgitb.enable()
print "<head><title>Title</title></head><body>"
f = open("blurbs.csv","rb")
blurbs = csv.DictReader(f, delimiter="\t")
for row in blurbs:
print row
for row in blurbs:
print row
f.close()
print "</body>"
只会打印一次blurbs.csv 的内容。第二个“for row in blurbs:”什么也不做。我有什么遗漏的吗?怎样才能把字典变成可以反复参考的东西呢?
您只需将文件查找回开头即可:
with open("blurbs.csv","rb") as f:
blurbs = csv.DictReader(f, delimiter="\t")
for row in blurbs:
print row
f.seek(0)
for row in blurbs:
print row
或者,您可以将字典生成包装到字典列表中并对其进行操作:
with open("blurbs.csv","rb") as f:
blurbs = list(csv.DictReader(f, delimiter="\t"))
for row in blurbs:
print row
for row in blurbs:
print row
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)