本文目录一览:
- 1、python批量复制并重命名文件
- 2、如何批量重命名,将一个文件夹内的文件依次重命名为另一个的
- 3、Python如何实现将一个文件夹里面的文件重命名并放到另外一个文件夹里面?
- 4、如何批量把多个文件夹内容合并到一个文件夹下,并自动重命名名称相同的文件
python批量复制并重命名文件
#! /usr/bin/env python
# coding=utf-8
import os
import shutil
import time
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
def copy_and_rename(fpath_input, fpath_output):
for file in os.listdir(fpath_input):
#if os.path.splitext(file)[1] == ".jpg":
oldname = os.path.join(fpath_input, file)
newname_1 = os.path.join(fpath_output,
os.path.splitext(file)[0] + "_1.jpg")
newname_2 = os.path.join(fpath_output,
os.path.splitext(file)[0] + "_2.jpg")
newname_3 = os.path.join(fpath_output,
os.path.splitext(file)[0] + "_3.jpg")
#os.rename(oldname, newname)
shutil.copyfile(oldname, newname_1)
shutil.copyfile(oldname, newname_2)
shutil.copyfile(oldname, newname_3)
if __name__ == '__main__':
print('start ...')
t1 = time.time() * 1000
#time.sleep(1) #1s
fpath_input = "C:/Users/jack/Desktop/shopimg/0708/"
fpath_output = "C:/Users/jack/Desktop/shopimg/0708/"
copy_and_rename(fpath_input, fpath_output)
t2 = time.time() * 1000
print('take time:' + str(t2 - t1) + 'ms')
print('end.')
如何批量重命名,将一个文件夹内的文件依次重命名为另一个的
不知道小伙伴们会不会遇到同时给多个文件修改名字的时候,那么遇到了应该如何实现呢?可能大家第一反应就是快捷键F2,没错,这个键是可以帮助我们给多个文件批量重命名的,但是呢,命名还是有限制的。名字都是以(1)(2)(3)等带括号的方式,完全不能根据自己的需要设置。不过没关系,今天小编推荐一个可以根据自己的喜好来修改文件名字,是可以批量重命名的哦,快来看看吧!
推荐使用:金舟批量重命名软件
操作方法:
一、打开软件后,点击“添加文件”,然后将需要重命名的所有文件上传到软件中,可批量添加;
二、软件支持以下三种方式重命名文件,分别是;自定义(直接修改整个文件名)、替换(替换某个字符)、插入(在原有的基础下添加新的字符);
三、在右侧可以看到三个区域,修改文件名、拓展名以及编号设置,根据自己的需要修改即可;
四、重命名文件后,在软件中是可以实时预览到的;
五、完成后,直接点击“重命名”就可以了;
六、重命名成功后会得到以下提示!
Python如何实现将一个文件夹里面的文件重命名并放到另外一个文件夹里面?
import re
import os
def get_file_list(folder):
file_list = [];
for root, dirs, files in os.walk(folder):
for f in files:
path=root+os.path.sep+f
file_list.append(path)
return file_list
def get_re_file_list(file_list,re_rule):
file_list_re=[]
for file_path in file_list:
if re.search(re_rule,file_path):
file_list_re.append(file_path)
return file_list_re
def rename_basename(file_list_re,re_rule,new_str):
re_c = re.compile(re_rule)
new_file_list = []
for file_path in file_list_re:
old_base_name=os.path.basename(file_path)
new_base_name=re_c.sub(new_str,old_base_name)
new_full_path=os.path.join(os.path.dirname(file_path),new_base_name)
new_file_list.append (new_full_path)
return new_file_list
def rename_dir(root,new_root,file_list):
new_file_list=[]
re_c = re.compile(root)
for file_path in file_list:
new_file_path=re_c.sub(new_root,file_path)
new_file_list.append(new_file_path)
return new_file_list
def rename2list(old_list,new_list):
for i in range(0,len(old_list)):
os.rename(old_list[i],new_list[i])
def main():
root=r"/home/user1/exp1"
old_dir="exp1"
new_dir=r"exp2"
re_rule="xy_|_nk"
new_str=""
old_file_list=get_file_list(root)
re_file_list=get_re_file_list(old_file_list,re_rule)
new_basename_list=rename_basename(re_file_list,re_rule,new_str)
new_dir_list=rename_dir(old_dir,new_dir,new_basename_list)
rename2list(re_file_list,new_dir_list)
if __name__ == '__main__':
main()
如何批量把多个文件夹内容合并到一个文件夹下,并自动重命名名称相同的文件
1、首先将想要合并的文件夹装到一个文件夹中。然后在该文件夹中新建一个文件夹和txt文件,均命名为all。
2、然后双击打开文本文档,在编辑页面中键入下方的代码:
for /f "delims=" %%p in ('dir /b/ad') do copy %%p\*.* d:\txt\all\
pause,然后保存该文件。
3、然后右键单击文本文档,选择重命名,输入“all.bat”,回车确定,在弹出来的窗口中点击选择“是”、
4、之后鼠标左键双击all.bat文件,界面显示bat文件执行结果,均提示复制文件成功,点击任意键后关闭该窗口。
5、进入all文件夹中查看,就可以看到已经全部合并到该文件夹中了。