关于pycharm, Callable[[str],bool]作为方法参数使用时, lambda 类型不提示问题
- 在pycharm中的情况, g提示为Any类型
- 所以在代码提示时, 没有任何提示
- 下面是vscode中, 安装了python 插件的情况, 提示为 str 类型
- 并且代码不全时,也有相应的提示
以下参考免费微信小程序:皆我百晓生 作答,并由阿齐Archie整理回复,若还有疑问可评论或留言。
在 PyCharm 中,如果你希望在使用 Callable[[str], bool]
作为方法参数时获得更好的类型提示,可以尝试以下步骤来改善代码提示:
确保 PyCharm 正确识别了类型注解:
使用正确的类型注解:
from typing import Callable
def test(func: Callable[[str], bool]) -> bool:
return func("dd")
使用 Lambda 表达式:
print(test(lambda g: g.startswith("d")))
启用更严格的类型检查:
Preferences
或 Settings
中搜索 Type Checking
。更新 PyCharm:
使用类型提示插件:
MyPy
,它可以提供额外的类型检查和提示。重构代码:
查看 PyCharm 的问题跟踪:
重启 PyCharm:
检查项目配置:
如果你已经尝试了上述步骤,但仍然遇到问题,可以考虑在 JetBrains 的官方论坛或社区中寻求帮助,或者提交一个 bug 报告。