for line in sys.stdin:
line = line.strip()
uid, profile = line.split('\t')
try:
process(profile)
except:
# do nothing and skip this profile
我想跳过所有抛出异常的配置文件。但是python给了我
IndentationError: expected an indented block
在“#什么都不做,跳过此个人资料”这一行。
如何告诉python什么都不做?
答案 0 :(得分:4)
Python" NOP"是pass
...
except:
pass
那就是说,永远不要使用裸except
条款。他们捕捉的东西就像你(几乎)绝对不想自己处理的KeyboardInterrupt
。如果您没有抓住任何特定内容,请执行except Exception
答案 1 :(得分:3)
使用pass
关键字:
except:
pass
pass
基本上是一个无操作的占位符。
此外,通常认为这样做只有except
是不好的做法。正如here所述,它将捕获所有异常,即使是那些不相关的异常。
相反,您应该捕获一个特定的例外:
except Exception: