继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

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

OverWrite_235
关注TA
已关注
手记 138
粉丝 10
获赞 65

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
打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP