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

Posted Python 集中营

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python内置函数通过字符串的方式来执行函数代码块,类似java的反射机制相当强大!相关的知识,希望对你有一定的参考价值。

【阅读全文】

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

【粉丝福利】关注公众号,获取全套视频资料,在一些特殊需求的情况下,需要通过执行字符串的方式来执行特殊代码块的执行过程。类似于java的反射机制python中也提供了这样的函数,操作起来相当简单快来了解一下。喜欢小编点个 \'关注\' 吧!

【往期精彩】

● python-Coverage 代码覆盖率统计工具,生成html代码报告

● 磨刀不误砍柴工,PyCharm开发工具的常规配置,充分提高开发效率!

● python程序的处理进度、可视化管理,对运行步骤一目了然!

● python-openpyxl Excel的单元格样式设置,包括字体、样式、宽高等等!

● 了解一下百度提供的python通用文字识别功能,距离百度AI近了一点点!

● 一句代码生成的超炫二维码

● python-docxtpl妙用:论文神器,excel习题集自动转换成word文档格式!

● 办公室文员必备python神器,将PDF文件表格转换成excel表格!

● python 中最好用的身份证规则解析工具,地区码、性别、出生年月、身份证编码等快速校验!

● os用法总结:python中必须掌握的内置模块os,实现与计算机操作系统的常规交互!

● python 实用技巧:几十行代码将照片转换成素描图、随后打包成可执行文件(源码分享)

● python十行代码实现文件去重,去除重复文件的脚本

● python的GUI框架tkinter,实现程序员的流氓式表白逻辑

● 探究python函数的不定长参数*args与**kwargs

本文由微信公众号【python 集中营】发布,更多精彩文章、视频资料即可领取!

欢迎关注作者公众号【Python 集中营】,专注于后端编程,每天更新技术干货,不定时分享各类资料!

以上是关于python内置函数通过字符串的方式来执行函数代码块,类似java的反射机制相当强大!的主要内容,如果未能解决你的问题,请参考以下文章

python有多少内置函数

python 内置函数 compile()

python 内置函数

内置函数——evalexeccompile

D15内置函数和魔术方法

python学习日记:day15:------内置函数