关于python:为多个文件添加扩展(Python3.5)

Adding extension to multiple files (Python3.5)

我有一堆没有扩展名的文件。

1
file needs to be file.txt

我尝试了不同的方法(没有尝试复杂的方法,因为我只是学习做一些高级python)。

这是我试过的一个:

1
2
3
4
5
import os
pth = 'B:\\etc'
os.chdir(pth)
for files in os.listdir('.'):
  changeName = 'files{ext}'.format(ext='.txt')

我尝试了追加,替换和重命名方法,但它对我不起作用。 或者那些在我想要做的事情上不在第一名工作?

我错过了什么或做错了什么?


你需要os.rename。 但在那之前,

  • 检查以确保它们不是文件夹(谢谢,AGN Gazer)

  • 检查以确保这些文件没有扩展名。 你可以用os.path.splitext做到这一点。

  • 1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    import os
    root = os.getcwd()
    for file in os.listdir('.'):
       if not os.path.isfile(file):
           continue

       head, tail = os.path.splitext(file)
       if not tail:
           src = os.path.join(root, file)
           dst = os.path.join(root, file + '.txt')

           if not os.path.exists(dst): # check if the file doesn't exist
               os.rename(src, dst)