在Python中更改目录名称

2024-09-27 23:22:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图改变我的目录和文件中的所有标签。目前系统是“082411 SomeNameHere”(mmddyy Title),我想把它改成“110824 SomeNameHere”。你知道吗

我知道数字的移动是相当简单的,但我不太确定如何访问目录中的名称并更改它们。你知道吗

建议?你知道吗


Tags: 文件目录名称title系统数字标签建议
2条回答

您需要^{}来遍历目录和文件。
您可以使用^{}来重命名文件。你知道吗

import os
import shutil
for dirpath, dirs, files in os.walk(os.curdir):
    for filename in files:
        shutil.move( # alternative: `os.rename`
                os.path.join(dirpath, filename),
                os.path.join(dirpath, filename_with_changes),
            )

“…数字的移动相当简单”所以我把它留给你:D
欢迎使用StackOverflow。你知道吗

试试这个:

import os, re, shutil

r = re.compile(r'^([0-9]{2})([0-9]{2})([0-9]{2})-(.*)$')

for root, dirs, files in os.walk('/path/to/topdir'):
    for filename in files:
        match = r.match(filename)
        if match:
            newfilename = match.group(3) + match.group(1) + match.group(2) + '-' + match.group(4)
            newfilename = os.path.join(root, newfilename)
            oldfilename = os.path.join(root, filename)

            # Rename oldfilename to newfilename
            shutil.move(oldfilename, newfilename)

基本上,它使用os.walk遍历目录结构,查找似乎具有旧命名约定的文件,提取部分,并使用shutil.move进行重命名。你知道吗

相关问题 更多 >

    热门问题