『壹』 python 中有關對象和類還有self,沒有理解
self
就是類中的,指的就是你的那個類的名稱,如果一個變數以self.開頭,說明這個變數是全局的,並且當你在這個類外面的時,可直接用類名稱.(self.後面的)表示
『貳』 python里的self是什麼意思
self就是一個指針。透明的指向當前類的實例。
顯示的將當前的類的實例進行傳遞。這就是python。不能用面向對象的理解去解釋它。
『叄』 在python的類中的self.a=1這句是什麼意思
初始化類變數a的值為1
『肆』 python中的self是什麼
class Name():
def __init__(self, name):
self.name = name
def say(self):
print 'Hello, %s' % self.name
如果不用self,那該怎麼實現say(),非常難。
__inti__(self.name)叫做構造函數,凡是Name類的一個對象被創建,先運行構造函數,構造函數需要的參數就是類所需要的參數。 比如 a = Name('Ricky') 其實是 給__init__(self,name)提供參數。而self就說明是類的變數,類里別的函數也可以用的!
這是面向對象編程思路的一個瓶頸,希望你能弄懂。
『伍』 python中self是什麼
python中的self就相當於C++中的this指針
也就是指向對象本身的指針
self.name = name 就是當前對象的成員變數name賦值為name。
『陸』 關於Python中的self
python中的self就相當於c++中的this指針
也就是指向對象本身的指針
self.name
=
name
就是當前對象的成員變數name賦值為name。
『柒』 關於python類中函數名前加self.的問題
self是對實例自己的引用。
self.a()的意思是"調用自己的過程a"。
試想,有定義一個函數a,同時,類中也有過程a,要區分兩者,在類中就要通過是否使用self前綴來區分,在外部就要通過是否有實例名來區分。
參考以下代碼:
『捌』 python 怎麼理解 類 和 self 的用法 和含義
首先你得先理解什麼是對象。假設生物是一個類,生物有生命,這個時候我就能在生物這個類里定義self.life=true。然後人類是生物的一種,那人類就可以繼承生物這個類,同時人類還有思想那我可以在人類這個類里定義self.think=true。之後我就可以實例化一個人和一個生物,這時被實例的人擁有思想和生命,而生物只有生命。
『玖』 我解釋一下python的類方法為什麼要寫一個self參數
類(class)初始化之後會得到實例(instance)。
self就是用於代表初始化的到的實例。
明確地寫一個self參數,使得類的方法(method)和普通的函數(function)本質上沒有差異,所有的輸入參數都顯示地傳遞到方法/函數當中。
當然作為類的方法,作用的對象一定會是實例,因而在Python的設計之初,完全可以設計成self不作為一個參數,但是那樣就需要一個關鍵字代表實例,比如在javascript中就是this。
然而Python的哲學是"Explicit is better than implicit.",顯示要比隱示好,因此Python類的方法需要一個self參數代表實例是符合邏輯的。
『拾』 python中self是什麼意思
題主可以學習一下面向對象編程的一般知識。
概括的說,主流的支持面向對象編程的語言(Java, python等)關於「類」的定義是很接近的。類要有一個構造函數(python里就是__init__,Java里是與類同名且無返回值的一個方法),在生成對象時會自動調用。然後為了方便在類的方法中引用當前對象,就引入了一些關鍵字(python里是self,Java里是this)。所以self並不是程序員自己定義的,而是語言本身內建支持的。
關於self,由於python的語法確實比較奇特,看起來好像self是一個普通參數,但實際並非如此。
關於構造函數,如果題主沒有感覺到其存在的必要性,不必在意,不過要記住有這樣一個語法。等以後遇到有需求的時候自然就明白了。