定义MySQL类
要求:
1.对象有id、host、port三个属性
2.定义工具create_id,在实例化时为每个对象随机生成id,保证id唯一
3.提供两种实例化方式,方式一:用户传入host和port 方式二:从配置文件中读取host和port进行实例化
1 import hashlib 2 import string 3 import random 4 import settings 5 6 class MySql: 7 def __init__(self,host,port): 8 self.id=self.create_id() 9 self.host=host 10 self.port=port 11 12 @classmethod 13 def from_conf(cls): 14 obj=cls( 15 settings.host, 16 settings.post 17 ) 18 return obj 19 20 @staticmethod 21 def create_id(): 22 m=hashlib.md5(''.join(random.sample(string.digits+string.ascii_letters+string.punctuation,8)).encode('utf-8')) 23 return m.hexdigest() 24 25 26 mysql=MySql('127.0.0.1',8086) 27 print(mysql.__dict__) 28 obj1=MySql.from_conf() 29 print(obj1.__dict__)
settings:文件 host='168.100.100.123' post=8089