久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Python小白不正確的使用類(lèi)變量實(shí)例

瀏覽:327日期:2022-07-24 08:05:57

不正確的使用類(lèi)變量

看下面一個(gè)例子:

>>> class A(object):... x = 1...>>> class B(A):... pass...>>> class C(A):... pass...>>> print A.x, B.x, C.x1 1 1

看起來(lái)沒(méi)有問(wèn)題。

>>> B.x = 2>>> print A.x, B.x, C.x1 2 1

嗯哈,還是和預(yù)想的一樣

>>> A.x = 3>>> print A.x, B.x, C.x3 2 3

我了個(gè)去。只是改變了A.x,為啥C.x也變了?

在Python里,類(lèi)變量通常在內(nèi)部被當(dāng)做字典來(lái)處理并遵循通常所說(shuō)的方法解析順序(Method Resolution Order (MRO))。因此在上面的代碼中,因?yàn)閷傩詘在類(lèi)C中找不到,因此它會(huì)往上去它的基類(lèi)中查找(在上面的例子中只有A這個(gè)類(lèi),當(dāng)然Python是支持多重繼承(multiple inheritance)的)。換句話說(shuō),C沒(méi)有它自己獨(dú)立于A的屬性x。因此對(duì)C.x的引用實(shí)際上是對(duì)A.x的引用。(B.x不是對(duì)A.x的引用是因?yàn)樵诘诙嚼顱.x=2將B.x引用到了2這個(gè)對(duì)象上,倘若沒(méi)有如此,B.x仍然是引用到A.x上的。)

知識(shí)點(diǎn)補(bǔ)充:

類(lèi)變量、實(shí)例變量概念

類(lèi)變量:

類(lèi)變量就是定義在類(lèi)中,但是在函數(shù)體之外的變量。通常不使用self.變量名賦值的變量。類(lèi)變量通常不作為類(lèi)的實(shí)例變量的,類(lèi)變量對(duì)于所有實(shí)例化的對(duì)象中是公用的。

實(shí)例變量:

實(shí)例變量是定義在方法中的變量,使用self綁定到實(shí)例上的變量,只是對(duì)當(dāng)前實(shí)例起作用。

以上就是Python小白不正確的使用類(lèi)變量實(shí)例的詳細(xì)內(nèi)容,更多關(guān)于Python新手不正確的使用類(lèi)變量的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 国产精品久久一区二区三区 | 欧美一级片在线 | 国产91av视频在线观看 | 亚洲不卡视频在线观看 | 久久精品一级 | 久久久久久国产精品 | 亚洲精品久久久久一区二区三区 | 开操网| 亚洲日韩欧美一区二区在线 | 日韩电影a | www.国产高清 | 欧美午夜视频 | 久久久久久久久久一区二区 | 4hu网站| 日韩在线精品强乱中文字幕 | 精品久 | 精品国产一区二区三区成人影院 | 欧美一级视频在线观看 | 国产乱码精品一区二区三区五月婷 | av国产精品毛片一区二区小说 | 日本美女一区二区 | 欧美日韩一区二区三区 | 中文字幕久久精品 | 一级网站在线观看 | 亚洲成人三级 | 成人三级在线 | 亚洲国产精品99久久久久久久久 | 国产精品成人在线 | 久草视频在线播放 | 精品一区二区在线观看 | 日本爽快片毛片 | 成人在线观看免费视频 | 国产伦精品一区二区三区在线 | 国产精品资源在线 | 久久精品国产亚洲一区二区三区 | 亚洲国产精品成人综合色在线婷婷 | 狠狠爱天天操 | 国产不卡在线视频 | 成年人看的羞羞网站 | 欧美在线 | 亚洲 | 看亚洲a级一级毛片 |