【发布时间】:2015-10-23 15:08:13
【问题描述】:
我认为这会很简单,但我被卡住了。我正在尝试根据人口字段重复一行数据。例如,如果人口为 921,则该行需要重复 921 次,然后根据人口移动到下一行并重复。 csv 文件确实有一个标题。我尝试删除它并遇到问题,所以我把标题放回去了。
i = 0
while i < pop:
if pop == 'F21_64':
break
else:
# writerow
i += 1
我不断收到此错误代码。 IndexError: 列表索引超出范围
【问题讨论】:
-
这段代码不可能产生
IndexError。另外,如果pop == 'F21_64'是真的,你将如何比较i < pop?请阅读此帮助页面:minimal reproducible example。 -
请注意,如果您的 csv 文件包含格式良好的标头,
csv.DictReader将适当地处理它。如果您知道 pop 是一个数字,您可以通过for _ in range(pop): do stuff循环重复多次。
标签: python python-2.7