我在包a
中有这样的课程:
class A:
@staticmethod
def method(param1, param2):
...
return something
在python文件中:
from a import A
print(A.A.method(p1,p2))
我的定义有什么问题?我认为通过`Class.Class.method'来调用静态方法是不对的。
有错误的屏幕截图:
答案 0 :(得分:2)
[问题用照片更新后的编辑]
因此,您的顶级应用程序称为a
,您可以在"信息"下面的图片中看到这一点。在图片的左侧。然后,您有一个名为A
的模块,您可以在文件夹A.py
下看到文件a
。此module A
的{{1}}名为class
所以,当您执行A
时,您要导入文件from a import A
该文件的A.py
具有class A()
你说def method(p1, p2)
正在运作......那就是正确
现在变成了
A.A.method()
可选地
from a import A
print(A.A.method(p1,p2)
或者
import a
print(a.A.A.method(p1,p2)
我的建议:开始使用一些更具描述性的名称,而不是
from a.A import A print(A.method(p1, p2)
的{{1}}和a
的{{1}}以及top level package
的{{1}} < / p>