为了账号安全,请及时绑定邮箱和手机立即绑定

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

标签:
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
点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消