真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

python函數(shù)帶下劃線,python中下劃線的用法

Python中下劃線是什么意思

1、用在Python解釋器,表示上一次的執(zhí)行結(jié)果

站在用戶的角度思考問題,與客戶深入溝通,找到師宗網(wǎng)站設(shè)計與師宗網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站制作、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、空間域名、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋師宗地區(qū)。

即使不把Python用于編程,也可以把它用作智能計算器,下劃線保存上次的計算結(jié)果,在計算時相當(dāng)方便:

4 + 3

7

_

7

_ + 2

9

a = 10

_

9

2、代碼中一個獨立的下劃線,表示這個變量不重要

一個獨立的下劃線,它也是一個變量名,只不過它比較特殊,當(dāng)你使用下劃線作為變量名時,就代表你告訴大家,這個變量不重要,僅僅占個位置,可以忽略,后面不會再使用它。

當(dāng)然了,這只是一種約定俗成,你要是不遵守也是可以的,畢竟在后面你還可以通過下劃線來獲取這個變量的值。

for i, _ in [(1. 2), (3. 4)]:

print(i)

上面的代碼表示我們只需要列表內(nèi)部元組的第一個,第二個其實賦值給了下劃線,雖然后面你可以通過下滑線來取到值,但是強烈建議你不要這么做,這違反了約定。

3、雙下劃線開頭和結(jié)尾的方法,是魔術(shù)方法

比如常見的"__int__"、"__dict__"、"__dir__"、"__doc__"、"__eq__"等等。

4、作為變量名中間的一部分

相比駝峰命名,這叫做蛇形命名,比如user_name。

5、作為數(shù)字中間的一部分,更易讀

10_000_000

10000000

1_280_500_000 == 1280500000

True

python下劃線定義屬性

類的私有變量和私有方法

在Python中可以通過在屬性變量名前加上雙下劃線定義屬性為私有屬性

特殊變量命名

1、 _xx 以單下劃線開頭的表示的是protected類型的變量。即保護(hù)類型只能允許其本身與子類進(jìn)行訪問。若內(nèi)部變量標(biāo)示,如: 當(dāng)使用“from M import”時,不會將以一個下劃線開頭的對象引入 。

2、 __xx 雙下劃線的表示的是私有類型的變量。只能允許這個類本身進(jìn)行訪問了,連子類也不可以用于命名一個類屬性(類變量),調(diào)用時名字被改變(在類FooBar內(nèi)部,__boo變成_FooBar__boo,如self._FooBar__boo)

3、 __xx__定義的是特列方法。用戶控制的命名空間內(nèi)的變量或是屬性,如init , __import__或是file 。只有當(dāng)文檔有說明時使用,不要自己定義這類變量。 (就是說這些是python內(nèi)部定義的變量名)

在這里強調(diào)說一下私有變量,python默認(rèn)的成員函數(shù)和成員變量都是公開的,沒有像其他類似語言的public,private等關(guān)鍵字修飾.但是可以在變量前面加上兩個下劃線"_",這樣的話函數(shù)或變量就變成私有的.這是python的私有變量軋壓(這個翻譯好拗口),英文是(private name mangling.) **情況就是當(dāng)變量被標(biāo)記為私有后,在變量的前端插入類名,再類名前添加一個下劃線"_",即形成了_ClassName__變量名.**

Python內(nèi)置類屬性

__dict__ : 類的屬性(包含一個字典,由類的數(shù)據(jù)屬性組成)

__doc__ :類的文檔字符串

__module__: 類定義所在的模塊(類的全名是'__main__.className',如果類位于一個導(dǎo)入模塊mymod中,那么className.__module__ 等于 mymod)

__bases__ : 類的所有父類構(gòu)成元素(包含了一個由所有父類組成的元組)

Python魔法函數(shù)(特殊函數(shù))

Python中如何實現(xiàn)運算符的重載,即實現(xiàn)例如a+b這樣的運算符操作呢?

在C++中可以使用 operator 關(guān)鍵字實現(xiàn)運算符的重載。但是在Python中沒有類似這樣的關(guān)鍵字,所以要實現(xiàn)運算符的重載,就要用到Python的魔法函數(shù)。Python魔法函數(shù)是以雙下劃線開頭,雙下劃線結(jié)尾的一組函數(shù)。我們在類定義中最常用到的 __init__ 函數(shù)就是這樣一個魔法函數(shù),它在創(chuàng)建類對象時被自動調(diào)用。

下面我們來看個簡單的例子。

上述代碼示例了幾個魔法函數(shù)的用法。 __add__ 函數(shù)對應(yīng)了二元運算符+,當(dāng)執(zhí)行a+b語句時,python就會自動調(diào)用a. add (b)。 對于上述例子中的v1+v2+v3,則相當(dāng)于調(diào)用了(v1. add(v2)). add(v3)。

代碼中還有一個在Python類定義經(jīng)常使用的 __str__ 函數(shù),當(dāng)使用 str() 時會被調(diào)用。print函數(shù)對傳入的參數(shù)都調(diào)用了str()將其轉(zhuǎn)換成易讀的字符串形式,便于打印輸出,因而會調(diào)用類定義的__str__函數(shù)打出自定義的字符串。

代碼中還有一個特殊的 __call__ 函數(shù),該函數(shù)在將對象采用函數(shù)調(diào)用方式使用時被調(diào)用, 例如v1()相當(dāng)于v1. call ()。

以上就是魔法函數(shù)的基本使用方法。常見的魔法函數(shù)我們可以使用 dir() 函數(shù)來查看。

輸出結(jié)果為:

上述結(jié)果中形式為‘__函數(shù)名__’的函數(shù)為魔法函數(shù),注意有些對象也是這種形式,例如__class__, __module__等, 這些不是魔法函數(shù)。具體的魔法函數(shù)說明可以參考Python官方說明文檔。

以上代碼在Python3.6運行通過.

PyCharm之Python書寫規(guī)范——消去提示下劃線

單行注釋:# + 空格 + 注釋

語句后注釋:兩個空格 + # + 空格 + 注釋

PyCharm在定義函數(shù)之前空兩行,使用函數(shù)之前空兩行來消除下劃線

4、字典

冒號后加一個空格去除下劃線

python 變量下劃線命名規(guī)則

單下劃線和雙下劃線在Python變量、類、模塊命名中都有不懂的含義,名稱中都各有其含義。有一些是程序員之間約定俗成的,Python解釋器不用強制其執(zhí)行,但有些Python解釋器會強制執(zhí)行。

本文從以下幾種不同使用方式,對下劃線的用途和含義進(jìn)行說明:

1)變量

通常用于類內(nèi)部變量的命名,表明該變量是該類私用變量,外部不要去訪問它,但也是可以訪問到的。這只是程序員之間的一個約定俗成的做法,Python解釋器本身不會對它進(jìn)行限制。

我們創(chuàng)建一個類:

實例化A,并訪問它的變量,aa._bar 也是可以訪問的,但既然人家這么命名了,外部最好不要去訪問了

2)函數(shù)和模塊

和變量一樣,這是一個私有函數(shù),不建議外部程序調(diào)用該函數(shù)。

我們創(chuàng)建一個腳本aa.py, 里面有2個函數(shù) _aa,bb:

導(dǎo)入aa,分別調(diào)用函數(shù) _aa和bb,bb 可以調(diào)用,但顯示無 _aa

3)類

同變量和函數(shù)一樣,都是私有變量,外部最好不要調(diào)用

用來避免和Python內(nèi)置函數(shù)命名產(chǎn)生沖突,PEP8解釋了這個約定。

如class或def不能用作Python中的變量名稱,如果之間用,會提示錯誤。如果你非要用它,可以 使用 class_或 def_。

還有一些函數(shù)名,如chr,chr()是Python內(nèi)置函數(shù),用來表示ascii碼對應(yīng)的字符他的輸入時數(shù)字,可以用十進(jìn)制,也可以用十六進(jìn)制。如果你非要它來表示染色體,可以用chr_來代替。當(dāng)然如果你直接使用它作為變量名,它也不會報錯,但最好不要這樣使用。

在python中定義私有變量只需要在變量名或函數(shù)名前加上 "__" (兩個下劃線),那么這個函數(shù)或變量就會成為私有的了。

在內(nèi)部,python使用一種 name mangling 技術(shù),將__var 替換成 _classname__var,因此在外部調(diào)用__var會找不到,代替它的是_classname_var。這種處理方式叫做名稱修飾(name mangling):解釋器更改變量的名稱,以便在類被擴(kuò)展的時候不容易產(chǎn)生沖突。

由雙下劃線前綴和后綴包圍的變量,不會應(yīng)用名稱修飾,因此不會被Python解釋器修改:

我們創(chuàng)建一個類B,dir() 查看類的所有屬性,發(fā)現(xiàn) 存在 __aa__

但是,Python保留了有雙前導(dǎo)和雙末尾下劃線的名稱,用于特殊用途。 如,__init__對象構(gòu)造函數(shù),或 __call__ 它使得一個對象可以被調(diào)用。所有我們盡量不要使用這種方式命名變量,以免和Python解釋器內(nèi)置的函數(shù)發(fā)生沖突。

_ 不加任何其他字符,單獨作為一個名字,用來表示某個臨時的或者無關(guān)緊要的變量。

舉例1: 表示一個臨時變量 。在下面的循環(huán)中,我們不需要獲取循環(huán)的索引,只是print n 行 'Hello World',可以用 "_" 來表示它只是一個臨時值:

舉例2: 表示一個不關(guān)心的變量 ,僅僅是個占位符變量,用來占位。mlist 列表中,我只想獲得1,2,4 位的變量,那 3 和 5 可以 用 _ 來占位

舉例3 : 表示由解釋器評估的最近一個表達(dá)式的結(jié)果 ,方便進(jìn)行查看。

Python中的下橫線是什么意思

Python中的下橫線是什么意思

下劃線一般有兩種情況:

1、兩邊都有兩個下劃線的情況:這一般是指內(nèi)建預(yù)定義屬性,這種內(nèi)建預(yù)定義屬性。

2、中間一根下劃線:這個命名中兩個單詞的分割線,這個以前OO編程中單詞首字母大寫差不多一個作用,只不過一般python的模塊函數(shù)編程會用下劃線分割這種方式。

更多技術(shù)請關(guān)注Python視頻教程。


本文題目:python函數(shù)帶下劃線,python中下劃線的用法
網(wǎng)站網(wǎng)址:http://weahome.cn/article/hopspe.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部