日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
創(chuàng)新互聯(lián)Python教程:python多繼承的查找順序是什么?

本文教程操作環(huán)境:windows7系統(tǒng)、Python 3.9.1,DELL G3電腦。

嵐山網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),嵐山網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為嵐山1000多家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的嵐山做網(wǎng)站的公司定做!

1、查找順序

(1)本地優(yōu)先,自己定義或重寫的方法優(yōu)先。本地沒有的,按照繼承列表,從左往右查找;

(2)單調(diào)性,所有子類,也要滿足查找順序。也就是說 A 繼承 B C,A 會(huì)先找 B 再找 C。但是在 A 查找之前,B 如果有多個(gè)繼承,那么它先得按查找順序查找。

2、實(shí)例

如果定義一個(gè)多繼承的類,如果不能滿足 MRO 的話,會(huì)拋出 MRO 的異常。

class A:
    pass
 
class E(A):
    pass
 
class F(A, E):
    pass
 
>>> F()
Traceback (most recent call last):
  File "/usr/local/python3/lib/python3.6/site-packages/IPython/core/interactiveshell.py", line 2862, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "", line 7, in 
    class F(A, E):
TypeError: Cannot create a consistent method resolution
order (MRO) for bases A, E # 拋出 MRO 異常,原因下面講

MRO 是可以看到的,因?yàn)轭愔写嬖谶@個(gè)屬性。

>>> A.__mro__
Out[10]: (__main__.A, object)
>>> E.__mro__
Out[11]: (__main__.E, __main__.A, object)
 
# 再定義一個(gè) G
class G(E, A):
    pass
 
>>> G.__mro__
Out[17]: (__main__.G, __main__.E, __main__.A, object)

以上就是python多繼承的查找順序的介紹,希望能對(duì)大家有所幫助。更多Python學(xué)習(xí)指路:創(chuàng)新互聯(lián)python教程


分享文章:創(chuàng)新互聯(lián)Python教程:python多繼承的查找順序是什么?
鏈接URL:http://www.5511xx.com/article/cdigjgi.html