import os
import json
def show_files(path, all_files):
# 首先遍历当前目录所有文件及文件夹
file_list = os.listdir(path)
prepath, lastpath = os.path.split(path)
all_files[lastpath] = {}
currList= []
# 准备循环判断每个元素是否是文件夹还是文件,是文件的话,把名称传入list,是文件夹的话,递归
for file in file_list:
if file.startswith("__"):
continue
# 利用os.path.join()方法取得路径全名,并存入cur_path变量,否则每次只能遍历一层目录
cur_path = os.path.join(path, file)
print(os.path.join(path, file))
# 判断是否是文件夹
if os.path.isdir(cur_path):
show_files(cur_path, all_files[lastpath])
elif file.startswith("test_") and file.endswith(".py"):
currList.append(file)
if len(currList) > 0:
all_files[lastpath] = currList
def main():
# 传入空的list接收文件名
contents = {}
show_files(“D:\webAutomation\TestCases”, contents)
# 循环打印show_files函数返回的文件名列表
print(contents)
tree = json.dumps(contents)
print(tree)
#for content in contents:
# print(content)
if name == ‘main’:
main()