我正在慢慢地学习Python,所以这是我遇到的一个问题。
尝试逐步浏览每个数字,直到最后一个数字,然后根据它进入的范围进行计算。
NUM = []
for b in range(1,8760):
if 3000 < b < 7000:
NUM=500
else:
NUM=300
writer.writerow([NUM])
TypeError:'int'对象不可迭代
我也在下面尝试了这个并且它运行但只打印出一个数字用于整个列表而不是在两个数字选项之间进行选择...
NUM = []
for b in range(1,8760):
NUM = numpy.where((b > 3000) & (b < 7000), 500, 300)
writer.writerow([NUM])
答案 0 :(得分:1)
您将循环中的NUM更改为500或300的数字。
我认为您正在寻找的是附加到您的列表
尝试:
NUM.append(500)
或
NUM.append(500)
这将添加到NUM,您最终将得到500和300的列表,具体取决于您的if条件。
您可以在python文档中看到此结构如何工作here。
答案 1 :(得分:1)
你的意思是这样吗?
NUM = []
for b in range(1,8760):
if 3000 < b < 7000:
NUM.append(500)
else:
NUM.append(300)
writer.writerow(NUM)