首页 > 解决方案 > 重命名文件没有任何作用 Python 2.7

问题描述

我正在重命名目录中的文件。我运行下面的代码没有错误,但文件保持相同的名称。

dir = 'H:\Projects\test'
files = glob.glob(dir)
files.sort(key=os.path.getmtime)
for i, file in enumerate(files):
    try:    
       os.rename(file, '{dir}/attachment-{i}.txt')
       break
    except:
        print('rename failed')

该目录有多种文件类型。所以,无论如何我都需要它们重命名。我在做什么不正确?

标签: python-2.7file-rename

解决方案


看看你的电话enumerate(...)实际上是什么。

您的glob.glob(...)行看起来只会返回您指定的目录,而不是其内容。如果您希望返回目录的内容,而不是

dir = 'H:\Projects\test'

尝试

dir = 'H:\\Projects\\test\\*'

双反斜杠是必要的转义字符,末尾的星号告诉 glob 命令您对目录的内容感兴趣,而不是目录本身。

祝你好运!


推荐阅读