溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

python中用下劃線的方法

發(fā)布時(shí)間:2020-09-21 12:21:06 來(lái)源:億速云 閱讀:160 作者:小新 欄目:編程語(yǔ)言

python中用下劃線的方法?這個(gè)問(wèn)題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見(jiàn)到的。希望通過(guò)這個(gè)問(wèn)題能讓你收獲頗深。下面是小編給大家?guī)?lái)的參考內(nèi)容,讓我們一起來(lái)看看吧!

Python中的下劃線具有特殊的意義,python用下劃線作為變量前綴和后綴指定特殊變量。

python中下劃線使用鍵盤(pán)上的Shift+減號(hào)鍵即可打出,減號(hào)鍵位于0和加號(hào)鍵之間。

在Python中下劃線還具有 private 和 protected 類似的訪問(wèn)權(quán)限作用,下面我們具體分析。

Python主要存在四種命名:
(1)object      #公用方法
(2)__object__  #內(nèi)建方法,用戶不要這樣定義 
(3)__object    #全私有,全保護(hù)(private)
(4)_object     #半保護(hù)(protected)

核心風(fēng)格:避免用下劃線作為變量名的開(kāi)始。

因?yàn)橄聞澗€對(duì)解釋器有特殊的意義,而且是內(nèi)建標(biāo)識(shí)符所使用的符號(hào),我們建議程序員避免用下劃線作為變量名的開(kāi)始。

一般來(lái)講,變量名_xxx被看作是“私有 的”,在模塊或類外不可以使用。

當(dāng)變量是私有的時(shí)候,用_xxx 來(lái)表示變量是很好的習(xí)慣。因?yàn)樽兞棵鸰_xxx__對(duì)Python來(lái)說(shuō)有特殊含義,對(duì)于普通的變量應(yīng)當(dāng)避免這種命名風(fēng)格。

“單下劃線” 開(kāi)始的成員變量叫做保護(hù)變量,意思是只有類對(duì)象和子類對(duì)象自己能訪問(wèn)到這些變量;

“雙下劃線” 開(kāi)始的是私有成員,意思是只有類對(duì)象自己能訪問(wèn),連子類對(duì)象也不能訪問(wèn)到這個(gè)數(shù)據(jù)。

以單下劃線開(kāi)頭(_foo)的代表不能直接訪問(wèn)的類屬性,需通過(guò)類提供的接口進(jìn)行訪問(wèn),不能用“from xxx import *”而導(dǎo)入;

以雙下劃線開(kāi)頭的(__foo)代表類的私有成員;

以雙下劃線開(kāi)頭和結(jié)尾的(__foo__)代表python里特殊方法專用的標(biāo)識(shí),如 __init__()代表類的構(gòu)造函數(shù)。

實(shí)例:

class Foo():
  def __init__():
    ...

  def public_method():
    print 'This is public method'

  def __fullprivate_method():
    print 'This is fullprivate_method'

  def _halfprivate_method():
    print 'This is halfprivate_method'

  f = Foo()
  f.public_method() # OK
  f.__fullprivate_method() # Error occur
  f._halfprivate_method() # OK
  f._Foo__fullprivate_method() # OK

感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)python中用下劃線的方法大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI