Python中下劃線含義詳解
格式 | 例子 | 作用及含義 |
---|---|---|
單下劃線開頭 | _var | 僅供內(nèi)部使用,通常不會有python解釋器強(qiáng)制執(zhí)行 |
末尾單下劃線 | var_ | 單個(gè)末尾下劃線(后綴)是一個(gè)約定,用來避免與Python關(guān)鍵字產(chǎn)生命名沖突。 |
雙下劃線開頭 | __var | 當(dāng)在類上下文使用時(shí),觸發(fā)“名詞修飾”。由python解釋器強(qiáng)制執(zhí)行 |
雙下劃線開頭和結(jié)尾 | __ var __ | python語言定義的特殊方法。避免在自己定義的屬性中使用這種方式命名 |
單下劃線 | _ | 用作臨時(shí)或無意義變量的名稱(‘不關(guān)心’)。后續(xù)不會用到變量。 |
單下劃線開頭:_var
當(dāng)涉及變量和方法名稱時(shí),單個(gè)下劃線前綴僅具有約定的含義
單下劃線是一種Python命名約定,表示某個(gè)名稱是供內(nèi)部使用的。它通常不是由Python解釋器強(qiáng)制執(zhí)行的,只是對程序員的提示。
末尾單下劃線:var_
一個(gè)變量最合適的名字已經(jīng)被一個(gè)關(guān)鍵字代替了。因此,類或def之類的名稱在Python中不能用作變量名。在這種情況下,你可以添加一個(gè)下劃線打破命名沖突:
def object_1(self, class): pass # 運(yùn)行結(jié)果: SyntaxError: invalid syntax def object_1(self, class_): pass # 運(yùn)行結(jié)果無報(bào)錯(cuò)
雙下劃線開頭:__var
對于以雙下劃線開頭的Python類的屬性(包括變量和方法),情況就有點(diǎn)不同了。
雙下劃線前綴會導(dǎo)致Python解釋器重寫屬性名稱,以避免子類中的命名沖突。
這也叫做名稱修飾(name mangling) - 解釋器更改變量的名稱,以便在類被擴(kuò)展的時(shí)候不容易產(chǎn)生沖突。
雙下劃線開頭和結(jié)尾:__ var __
Python保留了有雙前導(dǎo)和雙末尾下劃線的名稱,用于特殊用途。 這樣的例子有,__ init 對象構(gòu)造函數(shù),或 call __ — 它使得一個(gè)對象可以被調(diào)用。
最好避免在自己的程序中使用以雙下劃線開頭和結(jié)尾的名稱,以避免與將來Python語言的變化產(chǎn)生沖突。
單下劃線:_
單個(gè)獨(dú)立下劃線是用作一個(gè)名字,來表示某個(gè)變量是臨時(shí)的或無關(guān)緊要的,如果后面不會用到這個(gè)變量,可以用 _ 來臨時(shí)代替。
for _ in range(32): print('Hello, World!')
到此這篇關(guān)于Python中下劃線含義詳解的文章就介紹到這了,更多相關(guān)Python下劃線內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實(shí)現(xiàn)的基數(shù)排序算法原理與用法實(shí)例分析
這篇文章主要介紹了Python實(shí)現(xiàn)的基數(shù)排序算法,簡單說明了基數(shù)排序的原理并結(jié)合實(shí)例形式分析了Python實(shí)現(xiàn)與使用基數(shù)排序的具體操作技巧,需要的朋友可以參考下2017-11-11這三個(gè)好用的python函數(shù)你不能不知道!
作為21世紀(jì)最流行的語言之一,Python當(dāng)然有很多有趣的功能值得深入探索和研究.今天通過理論和實(shí)際例子來討論,需要的朋友可以參考下2021-06-06Django 實(shí)現(xiàn)外鍵去除自動(dòng)添加的后綴‘_id’
今天小編就為大家分享一篇Django 實(shí)現(xiàn)外鍵去除自動(dòng)添加的后綴‘_id’,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11Python實(shí)現(xiàn)批量梯度下降法(BGD)擬合曲線
這篇文章主要介紹了Python實(shí)現(xiàn)批量梯度下降法(BGD)擬合曲線,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04pycharm引入其他目錄的包報(bào)錯(cuò),import報(bào)錯(cuò)的解決
這篇文章主要介紹了pycharm引入其他目錄的包報(bào)錯(cuò),import報(bào)錯(cuò)的解決,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08