有时候需要进行对文件批量处理,而且文件又在不同的目录,可以使用递归方法将所有文件的路径便利出来后续进行修改。
import os
def show_files(base_path, all_files=[]):
"""
遍历当前目录所有py文件及文件夹
:param path:
:param all_files:
:return:
"""
file_list = os.listdir(base_path)
# 准备循环判断每个元素是否是文件夹还是文件,是文件的话,把名称传入list,是文件夹的话,递归
for file in file_list:
# 利用os.path.join()方法取得路径全名,并存入cur_path变量,否则每次只能遍历一层目录
cur_path = os.path.join(base_path, file)
# 判断是否是文件夹
if os.path.isdir(cur_path):
show_files(cur_path, all_files)
else:
if not file.endswith('.py'):
continue
else:
all_files.append(cur_path)
return all_files
暑期编程PK赛
得CSDN机械键盘等精美礼品!


