zmb*_*mbq 5 python typescript python-typing
我开始在 Python 中使用类型提示。我有以下功能:
def func(arg: Optional[str]):
# ...
# make sure arg is a string and not None
do_something(arg) # do_something expects a string
Run Code Online (Sandbox Code Playgroud)
仅当 arg 确实是一个字符串而不是 None 时,才能到达对 的调用do_something,但 mypy 无法自行解决(这不是 mypy 问题,它无法理解所有内容)。所以 mypy 标记了调用,do_something因为 arg 可能是 None
在 Typescript 中,可以使用感叹号来处理类似的情况arg!- 感叹号告诉静态分析器arg不是未定义的。Python中有类似的东西吗?
小智 4
如果您的逻辑包含以下内容,Mypy 不应标记任何内容:
if arg is None:
return None
Run Code Online (Sandbox Code Playgroud)
如果不可能,您也可以在警告之前添加断言:
assert x is not None
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1826 次 |
| 最近记录: |