gpt4 book ai didi

python - Python 中是否有等同于 Typescript 感叹号的东西?

转载 作者:行者123 更新时间:2023-12-05 02:52:48 27 4
gpt4 key购买 nike

我开始在 Python 中使用类型提示。我有以下功能:

def func(arg: Optional[str]):
# ...
# make sure arg is a string and not None
do_something(arg) # do_something expects a string

do_something 的调用只有在 arg 确实是一个字符串而不是 None 时才能到达,但是 mypy 不会自己弄清楚(这不是 mypy 的问题,它不能明白一切)。所以 mypy 标记对 do_something 的调用,因为 arg 可能是 None

在 Typescript 中,可以使用 arg! 处理类似的情况 - 感叹号告诉静态分析器 arg 不是未定义的。 Python 中有类似的东西吗?

最佳答案

如果您的逻辑包含以下内容,Mypy 不应标记任何内容:

if arg is None:
return None

如果那是不可能的,你也可以在警告之前放置一个断言:

assert x is not None

关于python - Python 中是否有等同于 Typescript 感叹号的东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62498567/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com