python⽅法中的变量与lf.变量的区别
定义或调⽤类的attribute or method时,要加lf。他们是类的“属性”,实例化后可以通过object.attribute, hod()的⽅法使⽤。
定义或调⽤类的局部变量或⽅法的局部变量时,不加lf,如果是类的局部变量,那么在类内都可以访问,但他不是类的属性,所以不能以实例化(object.attribute)的⽅式访问;如果是⽅法的局部变量,那么在⽅法内都可以访问。
>>>class AAA(object):
...def go(lf):
... lf.one ='hello'
...
>>>class BBB(object):
...def go(lf):
.
.. one ='hello'
...
错觉作文我心飞扬>>> a1 = AAA()
>>> a1.go()
>>> a1.one
'hello'
>>> a2 = AAA()
>>> a2.one
Traceback (most recent call last):
File "<stdin>", line 1,in<module>
AttributeError:'AAA'object has no attribute 'one'
>>> a2.go()女主重生小说
>>> a2.one
弹指尖
'hello'
>>> b1 = BBB()
>>> b1.go()
带红的成语>>> b1.one
Traceback (most recent call last):
File "<stdin>", line 1,in<module>
AttributeError:'BBB'object has no attribute 'one'
>>>
Traceback (most recent call last):只钟情于你
File "<stdin>", line 1,in<module>
AttributeError:type object'BBB' has no attribute 'one'
>>>class BBB(object):
...def go(lf):
属马和属蛇... one ='hello'
...print one
... lf.another = one
...
>>> b2 = BBB()
>>> b2.go()
hello
>>> b2.another
'hello'
关于雷锋的名言>>> b2.one
Traceback (most recent call last):
File "<stdin>", line 1,in<module>
AttributeError:'BBB'object has no attribute 'one'