在类中调用本身并返回,发现每次输出的id都不同,这是为什么呢?
初学者问题描述有所不清楚,还麻烦看一看代码
#链式调用
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__
chain = Chain()
chain.Wenzhou #TODO:每次调用id不同
相关问题
- how to define constructor for Python's new Nam
- streaming md5sum of contents of a large remote tar
- How to get the background from multiple images by
- Evil ctypes hack in python
- Correctly parse PDF paragraphs with Python
因为你这句话
return Chain('%s/%s'%(self._path, path))
就是创建了一个新的Chain实例啊。如果你改成return self
,估计id就相同了,我并没有试,你试试。