python内置函数通过字符串的方式来执行函数代码块,类似java的反射机制相当强大!

OverWrite_235 2021/9/15 13:04:47

eval()函数 1、执行一个打印函数eval("print(Python 集中营)")# Python 集中营 # # Process finished with exit code 02、自定义函数执行 def hello_world():print("Python 集中营\n 执行成功")eval(hello_world())# Python 集中营 # 执行成功 # # …

file

eval()函数

1、执行一个打印函数

eval("print('Python 集中营')")

# Python 集中营
#
# Process finished with exit code 0

2、自定义函数执行

def hello_world():
    print("Python 集中营\n 执行成功")

eval('hello_world()')

# Python 集中营
#  执行成功
#
# Process finished with exit code 0

locals()与globals()

'''
函数说明:可以访问全局、局部变量
locals(): 只读、不可对变量进行修改
globals(): 可读、可写
'''

1、赋值操作

a = '1'
def test():
    b = '2'
    globals()['a'] = 3
    locals()['b'] = 3
    print('a = ',a)
    print('b = ',b)

# a =  3
# b =  2

2、执行函数操作

'''
globals()['函数名称'](参数)
locals()['函数名称'](参数)
'''
globals()['test']()

getattr()函数

'''
函数说明:getattr()函数相比其他函数来说要更加安全一些
getattr(类名, '函数名称')(参数)
'''

class Test_Class:
    def hello_world(self, a,b):
        print('a * b 的结果是:',a * b)

getattr(Test_Class(), 'hello_world')(2,4)

# a * b 的结果是: 8
随时随地学软件编程-关注百度小程序和微信小程序
关于找一找教程网

本站文章仅代表作者观点,不代表本站立场,所有文章非营利性免费分享。
本站提供了软件编程、网站开发技术、服务器运维、人工智能等等IT技术文章,希望广大程序员努力学习,让我们用科技改变世界。
[python内置函数通过字符串的方式来执行函数代码块,类似java的反射机制相当强大!]http://www.zyiz.net/tech/detail-228477.html

上一篇:第 48 题:什么是闭包?

下一篇:第 47 题:什么是防抖和节流?

赞(0)
关注微信小程序
程序员编程王-随时随地学编程

扫描二维码或查找【程序员编程王】

可以随时随地学编程啦!

技术文章导航 更多>
扫一扫关注最新编程教程