凡是用print()来辅助查看的地方,都可以用断言(assert)来替代
使用断言
如果断言失败,assert语句本身就会抛出assertionerror
def foo(s): n = int(s) assert n != 0,'n is zero!' #assert的意思是,表达式n != 0应该是true,否则,根据程序运行的逻辑,后面的代码肯定会出错 return 10 / n def main(): foo('0') main() #输出; traceback (most recent call last): ... assertionerror: n is zero!
关闭断言
程序中如果到处充斥着assert,和print()相比也好不到哪去。不过,启动python解释器时可以用-o参数来关闭assert
断言关闭后,你可以把所有的assert语句当成pass来看
python -o err.py #:断言的开关“-o”是英文大写字母o,不是数字0
如对本文有疑问, 点击进行留言回复!!
网友评论