如何使用函數(shù)類型元素列表循環(huán)另一個(gè)類的所有函數(shù)?

我試圖得到一個(gè)類中所有函數(shù)的列表,然后遍歷它們,這樣它們就都可以執(zhí)行,而不必鍵入每個(gè)函數(shù)。例如:

class Foo:
    def foo(self):
        print('foo')

    def bar(self):
        print('bar')

然后在另一個(gè)文件中

import Foo
import inspect

newfoo = Foo()
functions = [f for f in inspect.getmembers(Foo, predicate=inspect.isfunction)]
for f in functions:
    newfoo.f[1]()

我希望得到:

foo
bar

但這會(huì)產(chǎn)生錯(cuò)誤

AttributeError: 'Foo' object has no attribute 'f'

有沒有什么辦法?提前謝謝。

? 最佳回答:

您可以使用getattr按名稱調(diào)用類方法。

code:

import inspect
class Foo:
    def foo(self):
        print('foo')

    def bar(self):
        print('bar')

newfoo = Foo()
functions = [f for f in inspect.getmembers(Foo, predicate=inspect.isfunction)]
for f in functions:
    getattr(newfoo, f[0])()

result:

bar
foo
主站蜘蛛池模板: 精品人伦一区二区三区潘金莲| 日本欧洲视频一区| 亚洲国产美女福利直播秀一区二区| 亚洲AV日韩综合一区| 黄桃AV无码免费一区二区三区| 亚洲国产成人久久综合一区| 视频一区精品自拍| 日亚毛片免费乱码不卡一区| 亚洲熟女综合色一区二区三区| 亚洲福利视频一区| 中文字幕人妻无码一区二区三区| 日韩国产一区二区| 免费一区二区三区在线视频| 精品国产一区二区三区在线 | 国产SUV精品一区二区四| 亚洲AV色香蕉一区二区| 中日韩一区二区三区| 国产精品99无码一区二区| 麻豆视传媒一区二区三区| 国内精自品线一区91| 毛片无码一区二区三区a片视频| 久久无码AV一区二区三区| 麻豆天美国产一区在线播放| 色欲综合一区二区三区| 免费无码一区二区三区| 亚洲一区二区三区久久| 中文字幕人妻第一区| 久热国产精品视频一区二区三区| 丝袜美腿一区二区三区| 国产成人一区二区三区电影网站 | 影音先锋中文无码一区| 亚洲一区二区三区高清视频| 亚洲一区中文字幕在线电影网 | 国产一区二区三区在线2021| 国产精品无码AV一区二区三区 | 精品乱子伦一区二区三区高清免费播放| 波多野结衣一区二区三区高清在线| 国产主播福利精品一区二区| 日韩精品无码Av一区二区| 91精品一区国产高清在线| 无码毛片视频一区二区本码|