python遍历当前目录下的文件夹,并将每个文件夹中的文件名替换为文件夹的名字加上文件名
时间: 2024-09-15 21:07:41 浏览: 37
在Python中,你可以使用os模块的os.walk()函数来遍历当前目录及其所有子目录。然后结合os.rename()函数来修改文件名。下面是一个简单的示例:
```python
import os
# 遍历根目录
for root, dirs, files in os.walk('.'):
# 遍历子目录
for dir_name in dirs:
# 获取子目录的完整路径
dir_path = os.path.join(root, dir_name)
# 遍历该子目录中的文件
for file_name in files:
# 构建原文件和新文件名
old_file_path = os.path.join(dir_path, file_name)
new_file_name = f"{dir_name}_{file_name}"
# 拼接新的文件路径
new_file_path = os.path.join(root, new_file_name)
# 尝试更改变量名,如果存在则先备份原始文件
try:
if os.path.exists(new_file_path):
backup_file_path = os.path.join(root, f"{new_file_name}_backup_{os.getctime(old_file_path)}")
shutil.copy2(old_file_path, backup_file_path)
# 执行文件名替换
os.rename(old_file_path, new_file_path)
except Exception as e:
print(f"遇到错误:{e},无法重命名 {old_file_path}")
阅读全文