gpt4 book ai didi

python - 如何以编程方式列出模块路径中的函数?

转载 作者:行者123 更新时间:2023-12-01 07:04:38 25 4
gpt4 key购买 nike

我需要编写一个脚本来读取某个模块(不是作为导入)并生成其函数名称列表。

类似的事情:

# script_to_be_listed.py

def function1():
pass

def function2():
pass

这里:

python my_reader_script.py script_to_be_listed.py

应该打印这个:

function1
function2

我已经尝试过使用 inspectdir 但只有在导入模块时它才有效(我不知 Prop 体会给出什么)。

如果没有 native 模块来帮助我完成此类任务,你们能给我建议一个好方法吗?

OBS:我这样做是为了在 AWS 上自动创建一些 Lambda 函数,并将它们命名为 script_to_be_listed.py 中的函数。

最佳答案

要扩展@user2357112的评论,您可以使用pyclbr.readmodule_ex函数来读取模块,迭代返回字典的项目,并在值是实例时打印键pyclbr.Function:

import pyclbr

for name, obj in pyclbr.readmodule_ex('module_to_be_browsed', ['/path/to/script']).items():
if isinstance(obj, pyclbr.Function):
print(name)

关于python - 如何以编程方式列出模块路径中的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58496159/

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