1

我正在尝试编写我的第一个脚本。我一直在阅读有关 python 的信息,但我有货。

我正在尝试编写一个脚本来重命名特定文件夹中的所有文件名。这就是我到目前为止所拥有的:

import os
files = os.listdir('files_to_Change')
print (files)

从文件夹中获取所有文件名:

for i in files:
    if i == ".DS_Store":
        p = files.index(".DS_Store")
        del files[p]

如果存在 mac 不可见文件,请从列表中删除(这里可能有错误)。

for i in files:
    oldName = i
    fileName, fileExtension = os.path.splitext(i)
    print (oldName)
    print (fileName)
    os.rename(oldName,fileName)

这是我的库存,我收到此错误:

输出:

FileNotFoundError: [Errno 2] No such file or directory: 'File.1'

在上面的部分中,我只是删除了文件扩展名,但这仅仅是开始。我还试图用空格代替每个点,并使每个单词的第一个字母大写。

谁能指出我正确的方向?

非常感谢

4

1 回答 1

1

在您的示例中,当您获取目录中的文件列表时files_to_Change,您将获得没有目录名称的文件名:

>>> files = os.listdir('test_folder')
>>> print files[0]
.com.apple.timemachine.supported

因此,为了获得该文件的完整路径,无论您在目录树中的哪个位置,都应该将目录名 ( files_to_Change) 与文件名连接起来:

import os
join = os.path.join

src = 'files_to_Change'
files = os.listdir( src )


for i in files:
    old = i
    new, ext = os.path.splitext ( old )
    os.rename( join( src, old ), join( src, fileName ))
于 2013-10-20T21:19:51.277 回答