Day30.staticmethod方法
1.staticmethod方法_非绑定方法
# todo 二:非绑定方法 -----> 静态方法: # todo 没有绑定给任何人:调用者可以是类、对象,没有自动传参的效果 class Mysql: def __init__(self, ip, port): self.nid = self.create_id() self.ip = ip self.port = port # todo self是绑定给对象,@classmethod + cls是绑定给类 # todo @staticmethod,非绑定方法 # 将下述函数装饰成一个静态方法, 调用时需要正常传参 @staticmethod def create_id(): import uuid return uuid.uuid4() # todo 添加@classmethod是绑定给类的 @classmethod def f1(cls): pass # todo 不加任何装饰是绑定给对象的 def f2(self): pass obj1 = Mysql('1.1.1.1', 3306) # Mysql.create_id(1, 2, 3) # obj1.create_id(4, 5, 6) print(Mysql.create_id, '\n') # 非绑定静态方法 print(Mysql.f1, '\n') # 绑定给类 print(obj1.f2, '\n') # 绑定给对象