call方法,对象后面加括号,触发执行 #特别不常用
class Person:
def __init__(self,name):
self.name = name
def __call__(cls,*args,**kwargs):
print(cls,*args,**kwargs)
p = Person("jack")
p() #触发执行call方法
Person()#触发执行call方法
type创建类:
类本质是由type产生的。type(Person)输出为<class "type">
通过type动态产生一个类:
def __init__(self,name,age) #动态创建类,类中的函数写在外面,之后在通过type的参数引进去
self.name = name
self.age = age
dog_class = type("Dog", (object,),{"sex" : "male","__init__":__init__}) #引入init方法
p = dog_class("jack", 12)
isinstance(obj,cls):检查obj是否是类cls的对象 例:isinstance(p,dog_class)
issubclass(sub,super):检查sub类是否是super类的派生类 issubclass(Son,Father)
总结以上是内存溢出为你收集整理的学习python第十三天 call方法、type动态创建类全部内容,希望文章能够帮你解决学习python第十三天 call方法、type动态创建类所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)