相当于达特的!Python 中的运算符(用于键入)



我正在建立一个网站与Flutter/Dart前端和python后端。我非常喜欢Dart严格的静态检查(节省了我大量的调试时间),所以我也开始在python中使用类型检查。

在Dart/Flutter中,我可以按照如下方式指定变量为int或null类型:

final int? myInt = 1; 

当在代码的未来点使用myInt时,我可以通过附加感叹号告诉Dart的类型检查器变量当前不为空,例如:

final int myIntNotNull = myInt!; 

在python中,我可以类似地指定一个变量为int或null类型,如下所示:

myInt:int|None = 1

我的问题是:是否有一种类似的简洁方式来告诉python的类型检查器,我确信myInt目前不为空?

经过一番讨论和进一步研究,似乎最好的选择是使用类型强制转换功能。

from typing import cast
myIntNotNull:str = cast(int,myInt)

最新更新