class Mysql:
def __init__(self, ip, port):
self.ip = ip
self.port = port
def func(self):
print(f‘{self.ip} {self.port}‘)
obj = Mysql(‘127.0.0.1‘, 3306)
obj.func() # 127.0.0.1 3306
IP = ‘127.0.0.1‘
PORT = 3306
import settings
class Mysql:
def __init__(self, ip, port):
self.nid = self.create_id()
self.ip = ip
self.port = port
def func(self):
print(f‘{self.ip} {self.port}‘)
@classmethod # 绑定给类的方法
def form_conf(cls):
print(cls)
return cls(settings.IP, settings.PORT)
@staticmethod # 将下述函数 装饰成一个静态方法
def create_id():
import uuid
return uuid.uuid4()
@classmethod
def f1(cls):
pass
def f2(self):
pass
obj2 = Mysql.form_conf() # <class ‘__main__.Mysql‘>
print(obj2.__dict__) # {‘nid‘: UUID(‘fb7015fb-8e6c-4c1e-9a24-241a7c3aff10‘), ‘ip‘: ‘127.0.0.1‘, ‘port‘: 3306}
class Mysql:
def __init__(self, ip, port):
self.ip = ip
self.port = port
@staticmethod # 将下述函数 装饰成一个静态方法
def create_id():
import uuid
return uuid.uuid4()
obj1 = Mysql(‘1.1.1.1‘, 2208)
# print(Mysql.create_id) # <function Mysql.create_id at 0x037083D0>
# print(obj1.create_id) # <function Mysql.create_id at 0x037083D0>
Mysql.create_id()
obj1.create_id()
原文:https://www.cnblogs.com/xuexianqi/p/12672581.html