2
我想在for循環中嵌套for語句。但是,在下面的示例中,變量d在for語句完成後不會增加一天。我通過在屏幕上打印d來確定這一點。爲什麼While While語句結束時的增量器不會觸發
while d <= end:
for row in reader:
rowDate = datetime.datetime.strptime(row[0], "%m/%d/%Y")
if row[1] == offer and rowDate == d:
rowList.append("1")
d += datetime.timedelta(days=1)
當我按如下縮進增量器時,它會執行。但是這不是我們期望的結果,因爲我不希望它在for語句的每次迭代時增加。
while d <= end:
for row in reader:
rowDate = datetime.datetime.strptime(row[0], "%m/%d/%Y")
if row[1] == offer and rowDate == d:
rowList.append("1")
d += datetime.timedelta(days=1)
有可能是我無法掌握的基本的Python的東西。有人可以解釋爲什麼D增量在第二個例子中,但不是在第一個?
如果while循環只運行一次,那就表明'd == end' ... – Interrobang 2012-03-15 22:35:47
確實'reader'有任何行? rowList和rowDate如何查看每個的結尾? – FakeRainBrigand 2012-03-15 22:37:24
正好在增量之後打印(在循環中)。你看到了什麼? :) – 2012-03-15 22:38:52