Discuss / Python / 求解

求解

Topic source

冲天魔王

#1 Created at ... [Delete] [Delete and Lock User]

class Chain(object): def init(self, path=''): self.path = path def getattr(self, path): return Chain('%s/%s' % (self.path, path)) def str(self): return self.path repr = str f=Chain() print(f.ff.tt) print(f.path) 问下为什么path什么都没有

在此插入代码
class Chain(object):
    def __init__(self, path=''):
        self._path = path
    def __getattr__(self, path):
        return Chain('%s/%s' % (self._path, path))
    def __str__(self):
        return self._path
    __repr__ = __str__

f=Chain()
print(f.abs.cmn)

你所有的方法都没有加 ,那么python解释器调用的就不是你定义的方法.


  • 1

Reply