【发布时间】:2015-07-10 13:45:34
【问题描述】:
我经常使用 Pycharm 文档字符串类型解析器来指定方法参数和返回的类型、属性或实例变量。如果它几乎一直都有效,我有一点关于告诉 PyCharm 我将函数或类作为参数/属性/...
这是一个简短的例子:
class Bar:
def __init__(self, bar):
"""
:type bar: str
"""
print bar
class Foo:
"""
:type my_class: Bar.__class__
"""
def __init__(self, cinstance=Bar):
"""
:type cinstance: Bar.__class__
"""
self.my_class = cinstance
def run(self):
# it should print an unexpected type warning, but it doesn't.
self.my_class(2)
如果我只输入Bar 而不是Bar.__class__,PyCharm 会告诉我不能调用Bar。那么如何告诉他我正在给他上课呢?
请注意,使用 @classmethod 装饰器,PyCharm 可以毫无问题地理解我们谈论的是类而不是实例。
这是我的尝试:
【问题讨论】:
-
JetBrain 票已打开:intellij-support.jetbrains.com/hc/en-us/requests/66648
标签: python python-2.7 pycharm