希望将文件扩展名从.txt更改为.csv
import os, shutil
for filename in os.listdir(directory):
# if the last four characters are “.txt” (ignoring case)
# (converting to lowercase will include files ending in “.TXT”, etc)
if filename.lower().endswidth(“.txt”):
# generate a new filename using everything before the “.txt”, plus “.csv”
newfilename = filename[:-4] + “.csv”
shutil.move(filename, newfilename)
答案 0 :(得分:2)
您可以使用操作系统并重命名。
但是,请允许我给你一个小建议。当你进行这些操作(复制,删除,移动或重命名)时,我建议你先打印你想要实现的东西。这通常是startpath和endpath。
请考虑以下示例,其中操作os.rename()
已被注释掉,以支持print()
:
import os
for f in os.listdir(directory):
if f.endswith('.txt'):
print(f, f[:-4]+'.csv')
#os.rename(f, f[:-4]+'.csv')
通过这样做,我们可以肯定某些事情看起来不错。如果你的目录不是.
,你可能需要这样做:
import os
for f in os.listdir(directory):
if f.endswith('.txt'):
fullpath = os.path.join(directory,f)
print(fullpath, fullpath[:-4]+'.csv')
#os.rename(fullpath, fullpath[:-4]+'.csv')
os.path.join()
将确保添加目录路径。