我需要一个超级简单的脚本来更改实际文件夹的子文件夹名称
这是一个更好理解的小例子。
我在我的音乐文件夹中,我想更改所有子文件夹的名称( This_Is_A_Example_Subpath ):
C:/我的音乐/ This_Is_A_Example_-子路径
C:/我的音乐/ This_Is_A_Example_- Subpath1
C:/我的音乐/ This_Is_A_Example_- Subpath2
我想改为:
C:/我的音乐/这是 - 示例 - 子路径
C:/我的音乐/这是 - 一个例子 - 子路径1
C:/我的音乐/这是 - 一个例子 - 子路径2
答案 0 :(得分:7)
import os
import os.path
for (dirpath, dirnames, filenames) in os.walk('C:/My Music/'):
for idx in range(len(dirnames)):
newname = dirnames[idx].replace('_', ' ')
os.rename(os.path.join(dirpath, dirnames[idx]), os.path.join(dirpath, newname))
dirnames[idx] = newname
这里有点解释。这将使用os.walk
遍历所有子目录。但是,由于您在遍历树时更改了目录的名称,因此需要更新它将要遍历的目录名称。所以这(1)重命名目录,(2)更新列表,以便它遍历新命名的目录。