python 變數
幾個小測試
class kk:
i=5
def dd(self):
i=3
>>kk.i
5
>>a=kk()
>>a.i
5
>>a.dd()
>>a.i
5
>>a.i=10
>>a.i
10
>> kk.i
5
######################################################
class kk:
i=5
def dd(self):
self.__class__.i=3
>>kk.i
5
>>a=kk()
>>a.i
5
>>a.dd()
>>a.i
3
>>kk.i
3
#####################################################
class kk:
i=5
def dd(self):
self.i=3
>>> kk.i
5
>>> a=kk()
>>> a.i
5
>>> a.dd()
>>> a.i
3
>>> kk.i
5
>>>
這個例子可以理解到 self 有挷定參數至當下這個物件的功能
#####################################################
class kk:
self.i=5
def dd(self):
i=4
Traceback (most recent call last):
File "<pyshell#46>", line 1, in <module>
class kk:
File "<pyshell#46>", line 2, in kk
self.i=5
NameError: name 'self' is not defined
>>>
self 不能直接下在class 下用,要用__init__
class kk:
def __init__(self):
self.i=5
def dd(self):
i=3
>>> kk.i
Traceback (most recent call last):
File "<pyshell#55>", line 1, in <module>
kk.i
AttributeError: class kk has no attribute 'i'
>>> a=kk()
>>> a.i
5
>>> a.dd()
>>> a.i
5
>>>
class kk:
i=5
def dd(self):
i=3
>>kk.i
5
>>a=kk()
>>a.i
5
>>a.dd()
>>a.i
5
>>a.i=10
>>a.i
10
>> kk.i
5
######################################################
class kk:
i=5
def dd(self):
self.__class__.i=3
>>kk.i
5
>>a=kk()
>>a.i
5
>>a.dd()
>>a.i
3
>>kk.i
3
#####################################################
class kk:
i=5
def dd(self):
self.i=3
>>> kk.i
5
>>> a=kk()
>>> a.i
5
>>> a.dd()
>>> a.i
3
>>> kk.i
5
>>>
這個例子可以理解到 self 有挷定參數至當下這個物件的功能
#####################################################
class kk:
self.i=5
def dd(self):
i=4
Traceback (most recent call last):
File "<pyshell#46>", line 1, in <module>
class kk:
File "<pyshell#46>", line 2, in kk
self.i=5
NameError: name 'self' is not defined
>>>
self 不能直接下在class 下用,要用__init__
class kk:
def __init__(self):
self.i=5
def dd(self):
i=3
>>> kk.i
Traceback (most recent call last):
File "<pyshell#55>", line 1, in <module>
kk.i
AttributeError: class kk has no attribute 'i'
>>> a=kk()
>>> a.i
5
>>> a.dd()
>>> a.i
5
>>>
留言
張貼留言