【发布时间】:2021-06-10 16:24:05
【问题描述】:
我正在尝试使用 python 库os 循环遍历根目录中的所有子目录,并以特定文件名为目标并重命名它们。
只是为了说清楚这是我的树结构
我的 python 文件位于根目录。
我想要做的,是以目录942ba为目标循环遍历所有子目录并找到文件000000并将其重命名为000000.csv
我目前的代码如下:
import os
root = '<path-to-dir>/942ba956-8967-4bec-9540-fbd97441d17f/'
for dirs, subdirs, files in os.walk(root):
for f in files:
print(dirs)
if f == '000000':
dirs = dirs.strip(root)
f_new = f + '.csv'
os.rename(os.path.join(r'{}'.format(dirs), f), os.path.join(r'{}'.format(dirs), f_new))
但这不起作用,因为当我运行我的代码时,由于某些原因,代码会从 subduers 中删除日期
谁能帮我理解如何解决这个问题?
【问题讨论】:
-
dirs.strip(root)正在丢弃定位文件所需的完整路径名的一部分。写r'{}'.format(dirs)而不仅仅是dirs有什么意义?