作者简介:一名在校计算机学生、每天分享Python的学习经验、和学习笔记。
座右铭:低头赶路,敬事如仪
个人主页:网络豆的主页
目录
前言
一.前期代码
二.实现批量读取
1.os库
2.实现思路
(1).实现批量的读取某文件下的每个Excel文件数据
(2)获取文件夹下的所有文件的名称
(3)文件路径=文件夹路径+文件名称
(4)使用for进行实现
(5)链路拼接
(6)定义空列表
3.本期全部代码
前言
本章将会讲解Python编程实现自动化办公案例(2)前期回顾Python编程自动化办公案例(1)
获取某文件夹下所有文件的路径 。
一.前期代码
import xlrd
#1.打开张三xlsx excel工作簿
path = r"C:\Users\86134\PycharmProjects\zdh\zs.xlsx"
data = xlrd.open_workbook(path)
#获取第一个工作表对象
# table=data.sheets()
#获取到第一题的选项单元格
#注意: list index out of range 下标超出索引范围
#注意:里面的下标也是从0开始
# table.cell_value(rowx=3,colx=4)#行,列下标
二.实现批量读取
1.os库
标准库,与操作系统交互的模块
Python的os库提供了通用的、基本的操作系统交互功能。os库是Python中的标准库,其中包含几百个子库。
import os
2.实现思路
(1).实现批量的读取某文件下的每个Excel文件数据
(2)获取文件夹下的所有文件的名称
#批量的读取某文件夹下的每个Excel文件数据
#获取某个文件下所有Excel文件的路径
#标准库 os
import os
path = r"C:\Users\86134\Desktop\zdh"
all_filename = os.listdir(path)
print(all_filename)
#['LL.xls', 'ls.xls', 'ww.xls', 'zs.xls']
(3)文件路径=文件夹路径+文件名称
如:
- C:\Users\86134\Desktop\zdh\zs.xls
- C:\Users\86134\Desktop\zdh\ls.xls
- C:\Users\86134\Desktop\zdh\ww.xls
- C:\Users\86134\Desktop\zdh\ll.xls
会发现前面都是一样的,会不会有一种机制可以吧列表中的元素取出来然后再去跟对应路径拼接?
for filepath in all_filename:
print(filepath)
#LL.xls
#ls.xls
#ww.xls
#zs.xls
(4)使用for进行实现
for filepath in all_filename:
# print(filepath)
filepath = path + filepath
print(filepath)
#C:\Users\86134\Desktop\zdhLL.xls
#C:\Users\86134\Desktop\zdhls.xls
#C:\Users\86134\Desktop\zdhww.xls
#C:\Users\86134\Desktop\zdhzs.xls
在此发现输出的结果缺少“\”这便会出现问题,我们如何进行改进呢?
for filepath in all_filename:
# print(filepath)
filepath = path +"\\" +filepath
print(filepath)
C:\Users\86134\Desktop\zdh\LL.xls
C:\Users\86134\Desktop\zdh\ls.xls
C:\Users\86134\Desktop\zdh\ww.xls
C:\Users\86134\Desktop\zdh\zs.xls
注意,\表示层级关系,在Python中需要使用\作为转义字符,也就是说\\-->\
使用这种方式虽然可以但是需要考虑的太多了,为此还有更好的方法吗?
(5)链路拼接
for filepath in all_filename:
#链路拼接:
filepath=os.path.join(path,filepath)
print(filepath)
(6)定义空列表
all_filepath = []
3.本期全部代码
#批量的读取某文件夹下的每个Excel文件数据
#获取某个文件下所有Excel文件的路径
#标准库 os
import os
path = r"C:\Users\86134\Desktop\zdh"
all_filename = os.listdir(path)
all_filepath = []
for filepath in all_filename:
#链路拼接:
filepath=os.path.join(path,filepath)
print(filepath)
#链路拼接:
filepath=os.path.join(path,filepath)
all_filepath.append(filepath)
print(all_filepath)
创作不易,求关注,点赞,收藏,谢谢~