首页 > 其他 > 详细

__getattr__和__call__用法

时间:2016-01-19 10:20:29      阅读:177      评论:0      收藏:0      [点我收藏+]

class Student(object):
  def __init__(self,name = ‘‘):
    self._name = name
  def __getattr__(self,attr):
    return Student(attr)
  def __call__(self,para):
    return Student(‘%s/%s‘%(self._name,para))
  def __str__(self):
    return self._name
  __repr__ = __str__

print(Student().user(‘aleck‘))

  在实例的方法调用中没有发现有user这个方法,通过__getattr__()来返回一个Student(user(‘aleck‘)),但是这里的user是一个函数,所以在调用的时候直接执行

__call__定义的方法,不知道是不是这样的,请指正。

    

__getattr__和__call__用法

原文:http://www.cnblogs.com/Aleck/p/5141098.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!