本篇文章给大家带来的内容是介绍python如何批量修改文件后缀名?批量修改文件后缀名的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。
需要把.dat 格式 转化成 .txt格式
##python批量更换后缀名 import os # 列出当前目录下所有的文件 files = os.listdir('.') #print('files',files) for filename in files: portion = os.path.splitext(filename) # 如果后缀是.dat if portion[1] == ".dat": # 重新组合文件名和后缀名 newname = portion[0] + ".txt" os.rename(filename,newname)
这里有一个缺点,就是,需要把程序放在与修改的文件同一目录下,因为filenames只是获取了程序目录的文件名。
自己本来想修改一下程序,实现,程序不在文件目录下也能进行修改操作,可是,还没有成功,思路如下:
##python批量更换后缀名 import os import sys sys.path.append(r"G:\traindataDAT\ ") #print(sys.path) # 列出当前目录下所有的文件 files = os.listdir(r"G:\traindataDAT") #files = os.listdir('.') #print('files',files) for filename in files: portion = os.path.splitext(filename) # 如果后缀是.txt if portion[1] == ".dat": # 重新组合文件名和后缀名 newname = portion[0] + ".txt" os.rename(filename,newname)
总感觉程序是有问题,就是不知道该如何修改,难道是在filename变成完整的路径吗?
根据这个思路,重新写了一个可以实现程序和文件不在同一目录的操作:
##python批量更换后缀名 import os import sys path0=r"G:\testdataTXT" path1=r"G:\testdataTXT"+'\\' sys.path.append(path1) # print(sys.path) # 列出当前目录下所有的文件 files = os.listdir(path0) # files = os.listdir('.') print('files',files) for filename in files: portion = os.path.splitext(filename) # 如果后缀是.txt if portion[1] == ".dat": # 重新组合文件名和后缀名 newname = portion[0] + ".txt" filenamedir=path1 +filename newnamedir=path1+newname # os.rename(filename,newname) os.rename(filenamedir,newnamedir)
参考:
Python批量修改文件后缀的方法(http://www.jb51.net/article/46260.htm);
sys.path.append()用法_myself(http://blog.csdn.net/rosefun96/article/details/78909412);
总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。更多相关视频教程请访问:Python视频教程,Python3视频教程,bootstrap视频教程!
The above is the detailed content of How to batch modify file extensions in python? How to batch modify file extensions. For more information, please follow other related articles on the PHP Chinese website!