Python 类型约束:从基础到高级应用
1. 处理 None 值与 Optional 类型
在编程中, None 值常常是导致程序崩溃的隐患。例如,在代码中可能会遇到如下错误:
code_examples/chapter4/invalid/hotdog_invalid.py:27:
error: Item "None" of "Optional[Bun]" has no attribute "add_frank"
不同的类型检查器可能需要特定的选项来捕获这类错误。以 mypy 版本 0.800 为例,需要使用 --strict-optional 命令行标志来捕获该错误。
为了避免此类错误,我们需要显式地检查 None 值并进行相应处理,或者断言该值不可能为 None 。以下是一个成功通过类型检查的代码示例:
def create_hot_dog():
bun = dispense_bun()
if bun is None:
print_error_code("Bun could not be dispensed")
return
frank = dispense_frank()
hot_dog = bun.add_f
超级会员免费看
订阅专栏 解锁全文
2449

被折叠的 条评论
为什么被折叠?



