Java教程

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

本文主要是介绍python内置函数通过字符串的方式来执行函数代码块,类似java的反射机制相当强大!,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

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
这篇关于python内置函数通过字符串的方式来执行函数代码块,类似java的反射机制相当强大!的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!