首先声明,自动补全已经打开,其他基本形式的自动补全是可以的。
A对象有dosomething()方法
def foo(a):
a.dosomething()
def foo2():
a = A()
foo(a)
在方法 foo 输入 a. 之后不会自动提示补全。是因为Python函数没有参数类型的声明,所以无法识别参数类型?
有什么办法可以变相解决吗?
首先声明,自动补全已经打开,其他基本形式的自动补全是可以的。
A对象有dosomething()方法
def foo(a):
a.dosomething()
def foo2():
a = A()
foo(a)
在方法 foo 输入 a. 之后不会自动提示补全。是因为Python函数没有参数类型的声明,所以无法识别参数类型?
有什么办法可以变相解决吗?
参数注释只能用于参数类型限定为一种的情况, 如果这个参数准备接受不同类型, 那么参数注释也起不到帮助补全代码的作用.
实际上, 代码补全根本不需要额外的操作, python中可直接对类调用方法并把这个参数作为实例传入, 这样就不愁代码补全了.
>>> class A:
def afunc(me):
print('via A')
>>> def f(arg):
#例如: 如果把arg当做A类型, 那就这样写. 这样即使arg有多种类型的可能也能实现代码补全
A.afunc(arg)
>>> f(A())
via A
4 回答4.4k 阅读✓ 已解决
4 回答3.8k 阅读✓ 已解决
1 回答3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
1 回答4.5k 阅读✓ 已解决
1 回答3.8k 阅读✓ 已解决
1 回答2.8k 阅读✓ 已解决
按道理你这种情况是会自动补全的。
你也可以这样,添加
:cls
: