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
这样的标志变量,虽然不是特别像蟒蛇,但这是最好的选择。这很公平。那我就得手动记录跳过的行了。这很公平。然后我必须手动跟踪跳过的行。