绑定,反射,内置函数-创新互联
#绑定方法:绑定给谁就应该谁来调用,谁来调用就会把谁当做第一个参数自动传入
import setting #配置文件为setting
class mysql:
def __init__(self,host,port): #绑定到对象
self.host=host
self.port=port
@classmethod #绑定到类
def from_conf(cls):
return cls(setting.HOST,setting.PORT)
@staticmethod #不与类也不与对象绑定
def creat_id():
n=eroos
return n
con=mysql.from_conf()
print(con.port,con.host)
com=mysql.creat_id()
print(com.create_id)
#反射 通过字符串来操作对象或者类的属性 1.hasattr 2.setattr 3.getattr 4.delattr
class foo:
def __init__(self,name):
self.name=name
def f1(self):
print('f1')
obj=foo('abc')
#hasattr() 判断
print(hasattr(obj,'name'))
print(hasattr(obj,'f1'))
#getattr 调用
if hasattr(obj,'f1'):
f=getattr(obj,'f1')
#print(f)
f()
#setattr() 修改
obj.x=1
setattr(obj,'x',2)
print(obj.__dict__)
#delattr 删除
#del obj.name
delattr(obj,'name')
print(obj.__dict__)
class fprser:
def __init__(self,host,port):
self.host=host
self.port=port
self.conn='xxx'
def intera(self):
while True:
cmd=input('>>: ').strip()
if not cmd:continue
cmd_l=cmd.split()
print(cmd_l)
if hasattr(self,cmd_l[0]):
func=getattr(self,cmd_l[0])
func(cmd_l)
def get(self,cmd_l):
print('geting......',cmd_l)
def put(self,cmd_l):
print('puting...',cmd_l)
client=fprser('2.2.2.2',23)
client.intera()
#内置函数
isinstance() #判断一个对象是不是某个类型的
l=list([])
print(isinstance(l,list))
issubclass() #判断是不是某个的子类
class foo:
pass
class bar(foo):
pass
print(issubclass(bar,foo))
#__str__ #打印时触发,默认打印内存地址
class foo:
def __init__(self,name,age): #初始化时触发
self.name=name
self.age=age
def __str__(self): ##打印时触发
return <__main__,.......> #可以修改打印自己需要的
conf=foo('abc',38)
print(conf) #print(abc.__str__())
#__del__ 回收之后在打印del
class foo:
def __del__(self):
print('del....')
obj=foo()
print('123')
class foo:
def __del__(self):
print('del....')
obj = foo()
del obj
print('123')
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
创新互联从2013年开始,是专业互联网技术服务公司,拥有项目成都网站设计、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元竞秀做网站,已为上家服务,为竞秀各地企业和个人服务,联系电话:18982081108当前名称:绑定,反射,内置函数-创新互联
当前地址:http://scyanting.com/article/hecho.html