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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python super 变参数问题(五)

發(fā)布時間:2025/4/5 python 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python super 变参数问题(五) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

這是Python多層繼承的一個特例,祖父,父親,兒子都有 draw 方法,那么經(jīng)過多次繼承后,

  • 如何對于不同層次的方法傳遞參數(shù)呢,可以看這篇文章python super 理解(四)
  • 如何對于不同層次的方法傳遞參數(shù)呢,那么這個例子展現(xiàn)了一種解法,但是這種做法不夠通用,在下一篇文章我給出更加通用的玩法
def myFun(ff,**kwargs): # print(kwargs)for key, value in kwargs.items():print ("%s == %s" %(key, value))print('#'*12)# Driver code myFun(ff ='a',first ='Geeks', mid ='for', last='Geeks') # input_dict={'first' :'Geeks', 'mid' :'for', 'last':'Geeks'} # myFun(**input_dict) first == Geeks mid == for last == Geeks ############ class Root:def draw(self):# the delegation chain stops hereprint('Root Drawing draw ')assert not hasattr(super(), 'draw')class Shape(Root):def __init__(self, shapename, **kwds):self.shapename = shapename# print('Shape class',kwds)super().__init__(**kwds)def draw(self):print('Shape Drawing. Setting shape to:', self.shapename)super().draw()class ColoredShape(Shape):def __init__(self, color, **kwds):self.color = color# print('ColoredShape class',kwds)super().__init__(**kwds)def draw(self):print('ColoredShape Drawing. Setting color to:', self.color)super().draw()cs = ColoredShape(color='blue', shapename='square') cs.draw() ColoredShape Drawing. Setting color to: blue Shape Drawing. Setting shape to: square Root Drawing draw

總結

以上是生活随笔為你收集整理的python super 变参数问题(五)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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