在 Python 中,如果传递了命令行优化选项或,assert
语句不会生成代码。这种情况会发生吗?声明不会被优化的运行时断言是否安全?-O
-OO
typing.assert_never()
考虑一下这个案例
from typing import assert_never
def func(item: int | str):
match item:
case int():
...
case str():
...
case _:
assert_never(item)
是否保证默认分支即使在优化模式下也能正常工作?