以下是一个遍历目录并从找到的.py文件中获取函数名称的示例代码:
import os
import re
def get_function_names(file_path):
function_names = []
with open(file_path, 'r') as file:
content = file.read()
# 使用正则表达式匹配函数定义
pattern = re.compile(r'def\s+([^\s(]+)\(')
matches = re.findall(pattern, content)
function_names.extend(matches)
return function_names
def traverse_directory(directory_path):
py_files = []
function_names = []
# 遍历目录获取所有的.py文件路径
for root, dirs, files in os.walk(directory_path):
for file in files:
if file.endswith('.py'):
py_files.append(os.path.join(root, file))
# 遍历每个.py文件并获取函数名称
for file in py_files:
names = get_function_names(file)
function_names.extend(names)
return function_names
# 测试示例
directory = '/path/to/directory' # 替换为目录的实际路径
functions = traverse_directory(directory)
for function in functions:
print(function)
这个示例代码中,get_function_names
函数接收一个.py文件的路径作为参数,打开并读取文件内容,然后使用正则表达式匹配函数定义行,并提取函数名称。traverse_directory
函数接收一个目录路径作为参数,使用os.walk
函数遍历目录下的所有文件,筛选出以.py为后缀的文件,然后遍历每个.py文件,调用get_function_names
函数获取函数名称,并将所有函数名称存入一个列表中返回。最后,你可以将要遍历的目录路径传递给traverse_directory
函数,获取到所有.py文件中的函数名称,并进行进一步的处理。
上一篇:遍历目录并从图像创建PDF