python - 在 Python 中更改文件夹名称

标签 python

我需要一个 super 简单的脚本来更改实际文件夹的子文件夹的名称

为了更好地理解,这里有一个小例子。
我在文件夹 我的音乐 中,我想更改所有子文件夹的名称 (This_Is_A_Example_Subpath):

C:/My Music/This_Is_A_Example_- 子路径
C:/我的音乐/This_Is_A_Example_- Subpath1
C:/我的音乐/This_Is_A_Example_- Subpath2

我想改成:

C:/My Music/This Is - 一个例子 - 子路径
C:/我的音乐/这是 - 一个例子 - Subpath1
C:/我的音乐/这是 - 一个例子 - Subpath2

最佳答案

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) 更新了列表,以便它遍历新命名的目录。

关于python - 在 Python 中更改文件夹名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6239782/

相关文章:

python - Pandas如何比较两个csv文件以删除重复项?

python - 使用 sklearn 预测多标签数据

python - (?ui) 在 Python 正则表达式中意味着什么?

python - 将 QPainterPath 简化为轮廓

python - 如何在 SMALLINT 上使用 teradatasql 在数据库中插入空值,计算期间发生数字溢出

python - 让 sqlalchemy View 反射在 fl​​ask-sqlalchemy 中工作

python - 在Python中计算向量的最快方法

python - 用Python制作结果表

python SyntaxError with dict(1=...),但 {1 :. ..} 有效

python networkx算法获取条件为边权重乘积的路径