我需要迭代 .csv,直到名为“seguir”的 bool 值变为 False。 问题是 takewhile 丢弃了最后一次迭代和值,而我需要它,因为该行中 .csv 的值与我的问题相关。
for line in itertools.takewhile(lambda x: seguir, lectura):
data2 = strintodate(line[1])
data4 = strintodate(line[2])
if data2 < data4:
seguir = False
escritura.writerow([programa + 1, data2, data2, line[4]])
有什么建议吗? 谢谢
最佳答案
您可以使用 for
循环,其条件是在写入行后 break
:
for line in lectura:
data3 = strintodate(line[1])
data4 = strintodate(line[2])
escritura.writerow([programa + 1, data2, data2, line[4]])
if data2 < data4:
break
关于python - 考虑到 takewhile (itertools) 的最后一次迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55402330/