class trial(object):
def __init__(self):
sup = ''
sup = self
print sup
trial_1 = trial()
赋值操作self.var = var
很有意义,但在左侧指定一个变量self
- (a)这是什么意思?而且,(b)为什么任何程序都这样做?变量=自我意味着什么?
class trial(object):
def __init__(self):
sup = ''
sup = self
print sup
trial_1 = trial()
赋值操作self.var = var
很有意义,但在左侧指定一个变量self
- (a)这是什么意思?而且,(b)为什么任何程序都这样做?变量=自我意味着什么?
sup
仅仅是现在对self
的另一个参考;这两个名称都是指相同的对象。
至于为什么会这样做,可能有多种原因,但我们需要更多的上下文。
如果您稍后要重新绑定sup
的名称,但需要self
作为起点,则分配可能有意义。一个遍历中发展出来的,其中算法开始于self
,然后,在一个循环中,迭代分配子节点,以相同的变量名:
sup = self
while sup.has_children():
sup = sup.get_first_child()
除了我会选择一个更好的名字比sup
。
与其他任务一样,它只是创建指向self
对象的另一个名称。
至于为什么,这是一个很好的问题:它实际上并没有做任何有用的事情。
@WLin为什么要在其他变量中指定它来做到这一点?你可以直接使用'self'。 – thefourtheye
同意。我正在考虑一些无关的事情。我删除了我以前的评论。 – WLin