问题描述
我已成功从 python 源代码文件中提取所有类定义和函数名称,但无法从中提取字段名称或变量名称。是否可以在 ast 中遍历 ClassDef 节点并提取字段名称或变量名称?我找不到任何内置函数。
import ast
with open("/content/challenges.py") as fd:
file_contents = fd.read()
module = ast.parse(file_contents)
class_deFinitions = [node for node in module.body if isinstance(node,ast.ClassDef)]
#class deFinitions
print(len(class_deFinitions))
for className in class_deFinitions:
print(className.name)
print("Printing function names Now")
#function names
for val in class_deFinitions:
methods = [stmt for stmt in val.body if isinstance(stmt,ast.FunctionDef)]
for method in methods:
print(method.name)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)