提示:点击关注作者,以获取其他的最新消息推送。
前言
本篇主要介绍python办公批处理修改文件夹名字遇到的问题,希望能够帮助到正在学习python的朋友。
提示:以下是本篇文章正文内容,下面案例可供参考
一、python中的列表与字典匹配什么?
python提供列表、字典、元组等数据的存储形式,本文主要使用列表中的值匹配字典中的键,并输出对应的键值。
二、使用步骤
1.引入库
代码如下(示例):
import os
2.读取数据
代码如下(示例):
path = r'D:\新建文件夹'
files_list = os.listdir(path)
print(files_list)
这里设置path读取目标路径,使用os.listdir()将文件夹中所有文件名保存到列表flies_list
3.创建字典
代码如下(示例):
folder_dict = {'D01': '601A', 'D02': '601B', 'D03': '602A',
'D04': '602B', 'D05': '604A', 'D06': '604B',
'D07': '605B', 'D08': '606A', 'D09': '606B'}
本次假定文件夹中包含的子文件夹名称为D01-D09,创建一个字典设置对应的键值。
4.使用for循环对字典进行匹配
代码如下(示例):
for x in files_list:
try:
if x in folder_dict:
os.rename(os.path.join(path, x), os.path.join(path, folder_dict[x]))
print("成功将" + path + '\\' + x + " 重名为" + path + '\\' + folder_dict[x])
else:
print("未找到对应的文件夹名称")
except Exception as e:
print("错误")
这里使用os.rename()进行重命名,然后在函数中使用os.path.join() 将文件的路径进行拼接。
注意:folder_dict[x]中的指引为x,即files_list中的文件名。
5.附整体代码
代码如下(示例):
import os
def rename(path):
files_list = os.listdir(path)
print(files_list)
folder_dict = {'D01': '601A', 'D02': '601B', 'D03': '602A',
'D04': '602B', 'D05': '604A', 'D06': '604B',
'D08': '606A', 'D09': '606B'}
for x in files_list:
try:
if x in folder_dict:
os.rename(os.path.join(path, x), os.path.join(path, folder_dict[x]))
print("成功将" + path + '\\' + x + " 重名为" + path + '\\' + folder_dict[x])
else:
print("未找到对应的文件夹名称")
except Exception as e:
print("错误",str(e))
if __name__ == '__main__':
path=r'D:\新建文件夹'
rename(path)
总结
以上就是今天要讲的内容,本文仅仅简单介绍了os.listdir()、os.rename()、os.path.join()的使用以及for循环的嵌套,而os函数提供了大量能使我们快速便捷地处理数据的函数和方法。