Python 是否有一种蟒蛇式的激活方式';其他';在';对于';循环,当continue命中时?
阅读并没有真正回答我的问题 我有一个Python 是否有一种蟒蛇式的激活方式';其他';在';对于';循环,当continue命中时?,python,Python,阅读并没有真正回答我的问题 我有一个 reader = csv.reader(source) for row in reader: if len(row[0]) > 23: # Do stuff continue if low > float(row[1]) > high: # Do stuff continue if low > float(row[2]) > high:
reader = csv.reader(source)
for row in reader:
if len(row[0]) > 23:
# Do stuff
continue
if low > float(row[1]) > high:
# Do stuff
continue
if low > float(row[2]) > high:
# Do stuff
continue
else:
print('All', reader.line_num, 'read successfully.')
设置,但是执行else
,尽管我跳过了for
循环
我宁愿只在没有点击continue
时调用else
为了澄清,代码的目的是在CSV文件中删除错误/格式错误的数据行。因此,格式错误的行具有单独的错误处理。如果可能的话,使用“else”作为最终通知程序将比使用标志更漂亮。对于
else
来说,唯一重要的是循环是否因为到达了iterable的末尾而终止;它不在乎循环内部发生了什么
如果您想根据是否调用了
continue
而有不同的行为,那么您必须自己跟踪它。对于否则
唯一重要的事情是循环是否因为到达了iterable的末尾而终止;它不在乎循环内部发生了什么
如果您希望根据是否调用了
continue
而有不同的行为,那么您必须自己跟踪它。您应该用示例输入解释您期望作为输出的内容。else
在for循环因迭代器耗尽而退出时被调用,您需要一个中断
,以避免调用else
。我认为使用像continued=True这样的标志变量,而不是特别pythonic,是最好的选择。您应该用示例输入解释您期望作为输出的内容。else
被调用如果for循环由于耗尽迭代器而退出,您将需要中断
,以避免调用else
。我认为使用像continued=True
这样的标志变量,虽然不是特别像蟒蛇,但这是最好的选择。这很公平。那我就得手动记录跳过的行了。这很公平。然后我必须手动跟踪跳过的行。