一 Python3 中类的静态方法、普通方法、类方法
静态方法: 用 @staticmethod 装饰的不带 self 参数的方法叫做静态方法,类的静态方法可以没有参数,可以直接使用类名调用。
普通方法: 默认有个self参数,且只能被对象调用。
类方法: 默认有个 cls 参数,可以被类和对象调用,需要加上 @classmethod 装饰器。
class Classname:
@staticmethod
def fun():
print('静态方法')
@classmethod
def a(cls):
print('类方法')
# 普通方法
def b(self):
print('普通方法')
Classname.fun()
Classname.a()
C = Classname()
C.fun()
C.a()
C.b()
二 不同类种方法的调用
1 二者在同一个文件夹下
A.py和B.py在同一个文件夹下面,可以通过from 文件名 import *或者 import A来互相调用。
from A import A
a = A()
a.Afunc("123456")
a.Bfunc("123456")
2 而这不在同一个文件夹下
A.py文件的文件路径:E:\PythonProject\winycg
B.py文件:
import sys
sys.path.append(r'E:\PythonProject\winycg')
'''python import模块时, 是在sys.path里按顺序查找的。
sys.path是一个列表,里面以字符串的形式存储了许多路径。
使用A.py文件中的函数需要先将他的文件路径放到sys.path中'''
import A
a=A.A(2,3)