assert翻译成中文是“断言”的意思,用于判断一个表达式,在表达式条件为 false 的时候触发异常。断言可以在条件不满足程序运行的情况下直接返回错误,而不必等待程序运行后出现崩溃的情况,例如我们的代码只能在 Linux(Windows) 系统下运行,可以先判断当前系统是否符合条件。
以下实例判断当前系统是否为 Windows,如果不满足条件则直接触发异常,不必执行接下来的代码:
(1)在Windows端运行:
import sys
# print(sys.platform)
assert ('win32' in sys.platform), "该代码只能在 Windows 下执行"
# 接下来要执行的代码
print("1")
output正常,没打印assert后面的语句“该代码只能在 linux 下运行”,打印1。
1
(2)对代码进行以下修改,然后在Windows端运行
import sys
# print(sys.platform)
assert ('linux' in sys.platform), "该代码只能在 linux 下执行"
# 接下来要执行的代码
print("1")
output报错,打印assert后面的语句“该代码只能在 linux 下运行”,没打印1。
---------------------------------------------------------------------------
AssertionError Traceback (most recent call last)
Cell In[15], line 3
1 import sys
2 # print(sys.platform)
----> 3 assert ('linux' in sys.platform), "该代码只能在 linux 下执行"
5 # 接下来要执行的代码
6 print("1")
AssertionError: 该代码只能在 linux 下执行