Python为什么使用None类型提示而不是NoneType?

问题描述 投票:1回答:1

对于Python的None对象,使用类型提示None代替其实际类型NoneType。从docs

请注意,None作为类型提示是一种特殊情况,并由type(None)代替。

我发现这令人困惑,没有给出进一步的解释。

有人知道背后的原因吗?

python mypy python-typing
1个回答
0
投票

这只是设计选择。背后没有特殊原因。

def fn(x: None) -> None的写法比def fn(x: NoneType) -> NoneType更为简洁(恕我直言也更清晰)。

也与其他类型提示一致:ListDict等,它们都是单个单词(与关联的内置函数相同),带有首字母大写。

© www.soinside.com 2019 - 2024. All rights reserved.