python断言语句assert
2024-09-06 08:18:27
断言语句的格式
assert test, [msg]
test是一个表达式,表达式求值为Fals
时引发AssertionError异常,msg是可选的异常消息。
def test_assert(a):
"""
当输入的参数不大于0时断言抛出异常
"""
assert a > 0, 'a需要大于0'
print('a=', a)
test_assert(-10)
运行test_assert(-10)程序将抛出异常:
Traceback (most recent call last):
File "M:/project/untitled1/testdatetime.py", line 788, in
main()
File "M:/project/untitled1/testdatetime.py", line 303, in main
test_assert(-10)
File "M:/project/untitled1/testdatetime.py", line 293, in test_assert
assert a > 0, 'a需要大于0'
AssertionError: a需要大于0
断言使用注意
- 断言只能作为辅助调试手段使用,在表达式为False时抛出异常终止程序执行,不能在程序中代替条件判断语句,因为程序以优化方式运行时不会执行断言语句。
- 添加-O参数程序运行在优化模式,不会输出断言
python -O main.py
最新文章
- asp.net教程:编译错误同时存在于不同dll中
- 多线程中共享变量——CCF总决赛试题
- Laravel 5 服务的注册和使用
- writing concurrent programs
- Java日志管理方法(转载)
- 必备的 Java 参考资源列表(转)
- Spring MVC与Struts2的区别
- AC日记——【模板】字符串哈希 洛谷 3370
- K好数--蓝桥杯
- Python入门 - 时间处理
- spring中注解式事务不生效的问题
- July 01st. 2018, Week 27th. Sunday
- ABP中针对sql2008的数据库配置
- 003-SqlHelper.cs/Web.config
- 简述Spring容器与SpringMVC的容器的联系与区别
- MapReduceV1作业生命周期图解以及与YARN基本对比
- MSSQL给字段添加默认值
- Linux下查看系统版本和make版本
- django需要了解的
- 阿里云OSS-web直传---在服务端c#签名,浏览器直传