【发布时间】:2015-05-01 04:17:27
【问题描述】:
考虑这个文件系统:
- 一个
- __init__.py
- b.py
- c
- __init__.py
- d.py
- main.py
b.py:
class B:
def foo(self):
print("foo")
d.py:
class D:
def bar(self):
x = None
""":type : B"""
#^- working
y = None
""":type : a.b.B"""
#^- nope :(
我的目标是使用类的完整路径进行类型提示(如 :type 的第二个示例所示)。第一种语法的问题是 pycharm 不考虑重复性,只是提示“最接近”的所需名称类。该项目的执行从 main.py 开始。
问题: 如何使第二种语法(类的绝对路径)在 PyCharm 3.4.1 中工作?
提前致谢
【问题讨论】:
-
不幸的是,这不起作用。即使您没有在 d.py 中显示任何导入,我也很惊讶它对您有用。
-
感谢您的回复。不幸的是,添加导入并不能解决这个问题。可以在同一项目中任何类的文档字符串中设置变量类型。唯一的问题是项目中存在多个同名类时。在这种情况下,无法指定哪些类应该用于代码完成/提示。根据官方文档jetbrains.com/pycharm/help/type-hinting-in-pycharm.html,这种语法是否有效(“类型语法”部分中的第二个项目符号),但由于某种原因它没有。
标签: python autocomplete ide pycharm type-hinting