fileOne.py:
class classOne:
def myFunc():
print True
fileTwo.py:
from fileOne import classOne
classOne.myFunc()
或者我必须像这样制作fileTwo.py:
from fileOne import classOne
instanceClass = classOne()
instanceClass.myFunc()
答案 0 :(得分:4)
将“@staticmethod”放在方法定义之上:
>>> class classOne:
... @staticmethod
... def myFunc():
... print True
...
>>> classOne.myFunc()
True
答案 1 :(得分:1)
为什么你想首先这样做? Python不是Java (其中每个函数都必须是类的一部分),因此您通常不需要Python中的静态/类方法。
如果函数没有令人信服的理由与特定类相关联(例如与该类的实例密切交互)......那么它不应该是类的一部分。
在Python中,您可以创建一个不属于类的函数:
fileOne.py:
def myFunc():
print True
fileTwo.py:
from fileOne import myFunc
myFunc()