日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

pythonsuper用法_python super函数使用方法详解

發(fā)布時(shí)間:2025/3/21 python 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pythonsuper用法_python super函数使用方法详解 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、super函數(shù)簡(jiǎn)介

python內(nèi)置函數(shù)super()主要用于類(lèi)的多繼承中,用來(lái)查找并調(diào)用父類(lèi)的方法,所以在單重繼承中用不用 super 都沒(méi)關(guān)系;但是,使用 super() 是一個(gè)好的習(xí)慣。一般我們?cè)谧宇?lèi)中需要調(diào)用父類(lèi)的方法時(shí)才會(huì)這么用;

二、super函數(shù)語(yǔ)法

super(type,object-or-type)

參數(shù):

type — 類(lèi),一般是類(lèi)名;

object-or-type — 類(lèi),一般是 self;

返回值:無(wú)

三、super函數(shù)使用

1.案例一:

# !usr/bin/env python

# -*- coding:utf-8 _*-

"""

@Author:何以解憂(yōu)

@Blog(個(gè)人博客地址): shuopython.com

@WeChat Official Account(微信公眾號(hào)):猿說(shuō)python

@Github:www.github.com

@File:python_super.py

@Time:2019/12/29 21:25

@Motto:不積跬步無(wú)以至千里,不積小流無(wú)以成江海,程序人生的精彩需要堅(jiān)持不懈地積累!

"""

class A:

def m(self):

print('A')

class B:

def m(self):

print('B')

class C(A):

def m(self):

print('C')

super().m()

C().m()

輸出結(jié)果:

C

A

代碼分析:

這樣做的好處就是:如果你要改變子類(lèi)繼承的父類(lèi)(由A改為B),你只需要修改一行代碼(class C(A): -> class C(B))即可,而不需要在class C的大量代碼中去查找、修改基類(lèi)名,另外一方面代碼的可移植性和重用性也更高。

2.案例二:

# !usr/bin/env python

# -*- coding:utf-8 _*-

"""

@Author:何以解憂(yōu)

@Blog(個(gè)人博客地址): shuopython.com

@WeChat Official Account(微信公眾號(hào)):猿說(shuō)python

@Github:www.github.com

@File:python_super.py

@Time:2019/12/29 21:25

@Motto:不積跬步無(wú)以至千里,不積小流無(wú)以成江海,程序人生的精彩需要堅(jiān)持不懈地積累!

"""

class Dog:

def __init__(self):

self.fly = False

def print_fly(self):

if self.fly:

print('不是普通狗,能飛')

else:

print('普用狗不會(huì)飛')

class xiaotianquan(Dog):

def __init__(self):

self.sound = True

def print_sing(self):

if self.sound:

print("汪汪汪")

else:

print("假狗狗")

if __name__ == '__main__':

dog = xiaotianquan()

dog.print_sing() # 能正常輸出

dog.print_fly() # 報(bào)錯(cuò),AttributeError: 'xiaotianquan' object has no attribute 'fly'

代碼分析:

雖然子類(lèi)xiaotianquan繼承父類(lèi)Dog,但是子類(lèi)直接調(diào)用父類(lèi)的print_fly函數(shù),依然會(huì)報(bào)錯(cuò),因?yàn)樽宇?lèi)沒(méi)有父類(lèi)的fly屬性,上面代碼可以通過(guò)在__init__函數(shù)中調(diào)用super()完成,例如:

class Dog:

def __init__(self):

self.fly = False

def print_fly(self):

if self.fly:

print('不是普通狗,能飛')

else:

print('普用狗不會(huì)飛')

class xiaotianquan(Dog):

def __init__(self):

super().__init__() # 等效 super(xiaotianquan,self).__init__()

self.fly = True

self.sound = True

def print_sing(self):

if self.sound:

print("汪汪汪")

else:

print("假狗狗")

if __name__ == '__main__':

dog = xiaotianquan()

dog.print_sing()

dog.print_fly()

輸出結(jié)果:

汪汪汪

不是普通狗,能飛

總結(jié)

以上是生活随笔為你收集整理的pythonsuper用法_python super函数使用方法详解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 中文在线天堂网 | 国产乱淫av免费 | 人妻洗澡被强公日日澡 | 女同性αv亚洲女同志 | 久久精品一区二区三区黑人印度 | 国产一级性生活 | 一级二级三级视频 | 99精品免费 | 黄色网址在线免费观看 | 国产精品熟妇一区二区三区四区 | 中日韩男男gay无套 人人草人人干 | 九色91视频 | 国产免费网址 | 少妇人妻一级a毛片 | 欧美亚洲在线视频 | 国产精品国产精品 | 欧美视频一区 | 日韩av色图| 久久精品国产一区二区 | 中文字幕狠狠干 | 精品在线视频观看 | 欧美国产视频 | 久久色资源网 | 欧美精品一区二区三区三州 | 久久久久久日产精品 | 好看的中文字幕av | 日韩天天 | 欧美黄色一区二区三区 | 久久七 | 一区在线免费 | 亚洲激情一区二区三区 | 潘金莲一级淫片aaaaaa播放 | 国产一级黄色大片 | 国产粉嫩在线 | 毛片大全免费看 | 看了让人下面流水的视频 | 欧美黄色大片在线观看 | 调教一区二区三区 | 欧美亚色| 国产69精品久久久久久久 | 激情福利 | 成人小视频在线看 | 欧美1页| 一区二区三区国产 | 精品国产免费无码久久久 | 91字幕网 | 嫩操影院 | 天天综合网永久 | 日本激情视频在线 | 女同动漫免费观看高清完整版在线观看 | 91精品国产综合久 | 成年人免费网站在线观看 | av男人资源 | 女同视频网站 | 日韩午夜小视频 | 日本一区二区在线观看视频 | 嫩草在线观看 | 欧美亚洲日本 | 香蕉国产999| 中文字幕免费高清网站 | 99热99re6国产在线播放 | 国产一区二区小视频 | 国产精品成人一区二区三区电影毛片 | 免费视频a | 一级成人黄色片 | 亚洲女人久久久 | 中文字幕成人在线 | 国产日产精品一区二区 | 国产九色91回来了 | 老熟女高潮一区二区三区 | 少妇裸体淫交视频免费看高清 | 中文字幕在线官网 | 天天操天天操 | 亚洲精品123区 | 国产无套内射又大又猛又粗又爽 | 日韩a∨| 办公室大战高跟丝袜秘书经理ol | 色婷婷国产精品综合在线观看 | 丁香婷婷久久久综合精品国产 | 日韩a毛片| 国产av一区不卡 | 我们俩电影网mp4动漫官网 | 日韩精品资源 | 快播视频在线观看 | 91成人免费在线 | 一区二区三区免费在线观看 | 日本三级网站在线观看 | 国产美女在线观看 | 2019年中文字幕 | av在线播放国产 | 韩国三级在线播放 | 中文字字幕码一二三区 | 老公吃小头头视频免费观看 | 91久久久国产精品 | 久久天天| 全程偷拍露脸中年夫妇 | 不卡视频在线 | 在线看v片 | 久久99成人|