IT俱乐部 Python python函数也可以是一个对象,可以存放在列表中并调用方式

python函数也可以是一个对象,可以存放在列表中并调用方式

python函数可以是一个对象,可以存放在列表中并调用

这篇主要来说明下python函数本身也可以是一个对象。

class PythonStudy:
    def mainProgram(self):
        i = self.test01
        i()

    def test01(self):
        print("hello!")


if __name__ == '__main__':
    main = PythonStudy()
    main.mainProgram()
"""
result:
hello!
"""

可以看到这里我们将PythonStudy类下的test01函数作为一个对象传递给了变量i,即此时变量i存储着函数test01对象。

如果我们要调用函数test01,只需要使用i()即可。

i = self.test01中的self指代的是PythonStudy类,如果不清楚,可以看一看Python中类相关的定义。

拓展:将函数对象作为列表逐个调用

代码如下:

class PythonStudy:
    def mainProgram(self):
        func_list = [self.test01, self.test02]
        for i in func_list:
            i()

    def test01(self):
        print("hello!")

    def test02(self):
        print("hallo!")


if __name__ == '__main__':
    main = PythonStudy()
    main.mainProgram()
"""
result:
hello!
hallo!
"""

可以看到这里我们将函数对象test01test02一起放置在了一个列表对象中。

之后我们使用for循环对列表中的元素进行遍历,然后使用i()分别调用这两个函数得到最终的结果。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持IT俱乐部。

本文收集自网络,不代表IT俱乐部立场,转载请注明出处。https://www.2it.club/code/python/9727.html
上一篇
下一篇
联系我们

联系我们

在线咨询: QQ交谈

邮箱: 1120393934@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部