Python3 实现文件批量重命名示例代码

时间:2022-09-04 17:10:39

在Python中os模块里,os.renames() 方法用于递归重命名目录或文件。类似rename()。

rename()方法语法格式如下:

os.rename(old,new)

old是需要修改的目录/文件名,new是修改后的目录/文件名,通过这个方法我们可以很轻松的完成批量在文件/目录增加固定前缀或者批量删除文件/目录固定前缀 。

以下代码Windows下和Linux都可以使用。

示例如下:

增加前缀'[Linuxidc.]':

?
1
2
3
4
5
6
7
8
9
import os
path='/home/linuxidc/linuxidc.com'
old_dir=os.listdir(path) #获取/home/linuxidc/linuxidc.com目录下的所有文件目录
print("原始目录为 %s"%old_dir)
for i in old_dir:
  new_name='[Linuxidc.]'+i
  os.rename(i,new_name)
new_dir=os.listdir(path)
print("现在的目录为%s"%new_dir)

运行后输出如下:

Python3 实现文件批量重命名示例代码

删除前缀'[Linuxidc.]':

?
1
2
3
4
5
6
7
8
9
10
import os
path='/home/linuxidc/linuxidc.com'
old_dir=os.listdir(path)
print("原始目录为 %s"%old_dir)
for i in old_dir:
  shu=i.rfind(']') #获取到']'的位置
  new_name=i[shu+1:]
  os.rename(i,new_name)
new_dir=os.listdir(path)
print("现在的目录为%s"%new_dir)

运行后输出如下:

原始目录为 ['[Linuxidc.]linuxidc.com.sh', '[Linuxidc.]kakoune', '[Linuxidc.]linuxidc', '[Linuxidc.]linuxidc.Java', '[Linuxidc.]linuxidc.com.jpg', '[Linuxidc.]opencv-3.4.0', '[Linuxidc.]linuxidc.class', '[Linuxidc.]Linux公社www.linuxidc.com.py', '[Linuxidc.]linuxidc.com.txt', '[Linuxidc.]linuxidc.txt', '[Linuxidc.]linuxidcbuild', '[Linuxidc.]amp', 'www.linuxidc.com.py', '[Linuxidc.]linuxidc.sh', '[Linuxidc.]linuxisdc.com.jpg', '[Linuxidc.]www.linuxidc.com', '[Linuxidc.]linuxidc.com.png', '[Linuxidc.].vimrc', '[Linuxidc.]tupian']

现在的目录为['linuxidc.txt', 'www.linuxidc.com', 'linuxidc.java', 'linuxidc.com.png', 'amp', 'Linux公社www.linuxidc.com.py', 'linuxidc.class', 'linuxisdc.com.jpg', 'linuxidc', 'opencv-3.4.0', 'www.linuxidc.com.py', 'linuxidc.com.sh', '.vimrc', 'linuxidcbuild', 'kakoune', 'tupian', 'linuxidc.sh', 'linuxidc.com.txt', 'linuxidc.com.jpg']

[Finished in 0.1s]

Python3 实现文件批量重命名示例代码

在Windows下还需要注意一下文件路径应使用双斜杠// ,否则会出现错误,Linux下一般不会出现此错误。

总结

以上所述是小编给大家介绍的Python3 实现文件批量重命名示例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

原文链接:https://www.linuxidc.com/Linux/2019-06/158935.htm