作者在习题38:列表的操作中,轻巧地说明了appen的使用。
mystuff=[]
mystuff.append('hello')
其中mystuff.append('hello')在python看来是append(mystuff,'hellor')
然后作者又给出了一个错误的情况:
class Thing(object):
def test(hi):
print hi
a=Thing()
a.test('hello')
错误原因是test()只可以接受一个参数,却给了两个。也就是 a.test('hello') 实际上是test(a,'hello')
从这里开始到习题40之前思路都还很清晰,直到作者开始说起class中的__init__,什么self什么空对象。我彻底得搞不懂了……
大概是因为强迫症的缘故,想要弄清如何让 a.test('hello') 执行成功。我就回去把习题40的代码和38错误的结合了一下,如下所示
class Thing(objest):
def __init__(self):
self.tangerine='hhh'
def test(self,hi):
print hi
a=Thing()
a.test('hello')
结果成功了!
然后算是(?)懂了self大概是在给a(实例)先占个位置……吧.