gpt4 book ai didi

Python:字面意思是 "printing"一个函数

转载 作者:太空宇宙 更新时间:2023-11-04 03:52:37 25 4
gpt4 key购买 nike

由于我不会深入的原因,我需要一些方法来逐字打印函数。

我知道当您在函数对象上运行 print 时,您会得到一些复杂的 <010101045 function> 输出。所以据我所知,也许唯一的方法就是运行某种 python 记事本模块。然后我可以设计一个算法来写一行文本来匹配每个函数行,从而得到一个打印函数。

如果有人知道实现此目的的其他方法,请告诉我,因为我确信这样做非常复杂。但是,如果这是唯一的方法,如果有人可以引导我完成这样做的基本步骤,那我也将不胜感激。

我还想到,能够将打印函数的语法保存为 python 格式会很有趣,这样我就可以根据需要直接将其导入程序。是的,我意识到这变得非常复杂,但同样,如果有人知道如何做到这一点,那么一般的演练会非常酷。

如果有人已经将上述过程自动化到程序可以从导入它的程序内部修改导入模块的地步,那么这真的很酷。

(当然,在理想情况下,修改后的版本将以不同的名称保存,并与以前的版本一样被导入,并在执行导入的程序中在此时进行处理)

我想此时我只是对从 python 程序中导入、保存和修改文件的基本命令感到好奇。

感谢所有见解,

谢谢,

PS:如果你想知道为什么我想做所有这些,那应该是显而易见的,否则需要一段时间来解释。

最佳答案

使用inspect.getsource :

def a():
pass

import inspect
print inspect.getsource(a)

当然,这只有在您可以访问原始来源的情况下才有效。

如果您没有原始来源,您最多可以获得字节码(参见 dis.dis)。

编辑:Python 交互式 shell 是一个示例,其中 inspect 无法访问源代码。

关于Python:字面意思是 "printing"一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20510020/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com