国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Python 子類能否覆蓋全局函數?

瀏覽:95日期:2022-07-25 09:50:07

問題描述

比如在 a.py 中有個類 A

A 有個好幾個方法, 這些方法都調用了一個全局函數hello()(定義在類外, 但也在 a.py 里).

假設我想寫一個子類 B, 但是希望 B 去調用一個新定義的 hello(), 這樣可能嗎?

# a.py# hello() 不在類的聲明里def hello(): print 'Hello' class A(object): # 調用全局函數 hello() def greeting(self):hello()

# b.pyclass B(A): # 想要重載hello()從而使greeting 的輸出改變

不改 greeting, 但想要這樣的輸出:

b = B()b.greeting()’Hi’

問題解答

回答1:

看來要使用繼承的方式才可以。

回答2:

謝邀。

抱歉,目前還沒有完全明白你的需求,所以先從理論上回答一下,如果題主能補充一下,我可以進一步完善我的答案,給出能解決問題的代碼。

在Python中,如果一個方法在邏輯上和一個類是能夠放在一起的。那么可以將該方法作為類的靜態方法,即用@staticmethod裝飾一下。

如果將hello()作為類A和類B的靜態方法,那么在各自的類中用cls.hello()就可以調用各自版本的hello了。

根據題主的描述,在類B中含有hello(),那么我想將其作為靜態方法是沒有問題的。如果有其他模塊想要調用a.py中的hello(),可以直接使用A.hello()。

如果我對題主的需求理解有誤,還請指正。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 欧洲一级视频 | 亚洲精品一二三 | 国产成人精品日本亚洲语音2 | 中文字幕在亚洲第一在线 | 黄色天堂在线 | 国产成人精品一区二区免费视频 | 国产成人精品高清免费 | 免费一区二区三区 | 美女又黄又www | 日韩视频欧美视频 | 亚洲精品一区二区观看 | 成人欧美一区二区三区黑人 | 国产国语一级毛片全部 | 中文字幕在线观看国产 | 91亚洲精品一区二区在线观看 | 久久99久久99精品 | 看黄免费网站 | aaa毛片免费观看 | 国产美女精品一区二区三区 | 波多野结衣在线观看一区二区 | 国产精品国产亚洲精品看不卡 | 高清大学生毛片一级 | 成人免费手机在线看网站 | 成人免费高清视频网址 | 色在线网站免费观看 | 国产成人综合网亚洲欧美在线 | 亚洲日本一区二区三区在线 | 免费观看欧美一级片 | 欧美成年人网站 | 看全色黄大色黄大片毛片 | 久久综合精品视频 | 亚洲欧美中文日韩二区一区 | 欧美日韩国产高清一区二区三区 | 欧美成人亚洲综合精品欧美激情 | 国产亚洲午夜精品a一区二区 | 国产精品李雅在线观看 | 成人亚洲精品一区 | 久久午夜网 | 欧美熟videos肥婆 | 日本一区二区不卡久久入口 | 精品欧美一区二区在线观看欧美熟 |