动态添加属性和方法

import types #添加方法的库
#添加动态方法
def lookstate(self):
print(‘用户{}用户名{}年龄{}密码{}’
.format(self.name,self.admin,self.age,self.password))
pass
#动态添加一个类方法
@classmethod
def classTest(cls):
print(‘这个一个类方法’)
pass
#动态添加一个静态方法
@staticmethod
def staticmethodtest():
print(‘这个一个静态方法’)
pass
class User:
def init(self,name,age):
self.name=name
self.age=age
pass
def str(self):
return ‘{}的年龄为{}’.format(self.name,self.age)
pass
print(‘绑定类方法’)
User.TestMethod=classTest#绑定类方法
User.TestMethod()
User.static=staticmethodtest#绑定静态方法
User.static()#调用静态方法
r=User(‘root’,22)
r.password=‘pwd@123’#在执行过程中,动态的为这个r赋予专属的属性
print®
print(r.password)
User.admin=‘a’#动态添加类属性
print(r.admin)
r.printInfo=types.MethodType(lookstate,r)#动态绑定方法
r.printInfo()#调用动态绑定的方法
r.TestMethod()#属性成员调用动态添加的类方法
r.static()#属性成员调用动态添加的静态方法方法

上一篇:NU1LCTFer的成长之路-web入门-CTF中的sql注入-sql注入-2-wp


下一篇:nginx 配置例子