輸入優惠碼現折100元

self vs this

在看python的類別時,常會發現用到self,我查到這一篇Python self,我把它轉成繁體來看:『 類別的方法與普通的函式只有一個特別的區別——它們必須有一個額外的第一個引數名稱,但是在呼叫這個方法的時候你為這個引數賦值,Python會提供這個值。這個特別的變數指物件本身,按照慣例它的名稱是self。雖然你可以給這個引數任何名稱,但是 強烈建議 你使用self這個名稱——其他名稱都是不贊成你使用的。使用一個標準的名稱有很多優點——你的程式讀者可以迅速識別它,如果使用self的話,還有些IDE(整合式開發環境)也可以幫助你。

C++/Java/C#程式師的注釋
Python
中的self等價於C++中的self指標和JavaC#中的this參考。

你一定很奇怪Python如何給self賦值以及為何你不需要給它賦值。舉一個例子會使此變得清晰。假如你有一個類別稱為MyClass和這個類別的一個實體MyObject。當你呼叫這個物件的方法MyObject.method(arg1, arg2)的時候,這會由Python自動轉為MyClass.method(MyObject, arg1, arg2)——這就是self的原理了。

這也意味著如果你有一個不需要引數的方法,你還是得給這個方法定義一個self數。』

這樣就比較容易懂了!

Print Friendly, PDF & Email
馬上成為工作達人的Fans

About ㄚ琪

工作達人Fun Taiwan的創辦者及總編,可以在這裡更認識他。

發表迴響

你的電子郵件位址並不會被公開。 Required fields are marked *

*

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料

Scroll To Top