用Python读写Excel文件。

本文最后更新于:1 个月前

前言

一次偶然的机会,工作中需要处理七百多个excel文件,当时可怜加心疼我们的运维。

想了想自己貌似在哪里看过python的广告,她男朋友会Python,用几行代码批量处理了几百个excel,然后提前下班。约会逛街吃饭。而你不会Python,还没男朋友,只能苦逼加班。

现在这世道啥都内卷,男朋友都内卷,淦。于是,我这么乐于助人的小朋友便百度了一下Python处理Excel,然后随便拷了点代码居然跑起来了。这语言没有什么难度。处理Excel,你问我Java能做么,我回答说能,那你为什么不用Java呢,更何况你本身就是主学Java,我回答因为python确实太简单,而且够用。

正文

安装Python环境

首先你需要有Python的环境,不知道怎么装没关系,win10的系统直接打开cmd命令行,然后输入python,回车,应该会跳转到应用商店,傻瓜式点安装就行了.

好的,如何判断自己是否安装了Python环境呢,还是cmd命令行,如果不晓得什么是命令行,那建议找个男朋友。输入python,回车出现这样。如果是这样的

python

那么好的,这样说明已经成功安装python了,天才也有穿纸尿裤的时候,别慌。

安装我们需要的库

什么是库啊,怎么安装啊,没关系,不用操心这个。还是命令行,

pip install xlrd

这个是安装读取Excel的库 ,这个貌似只支持xsl格式

pip install xlwt

这个是安装写Excel的库

所需工具

下载个VsCode,百度搜索VsCode,进入主页下载安装即可。这个很好用的,在写动态类型的语言时,这个和Idea系列的不分上下,写Python更简单咯。

一站式解决,微软出品必属精品

上面都是废话上代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import os
import xlrd
import xlwt # 不支持excel2007的xlsx格式


# 这里填你自己的路径
dirname = r'D:\File\Mixed\用户文件夹\桌面\mz报表\合肥市直主副卡记录(1)\合肥市直主副卡记录'
filename = ".xls"

result = []
# 这个方法是搜寻上面目录下的所有Excel文件
def search(dirname=dirname, filename=""):
for item in os.listdir(dirname):
item_path = os.path.join(dirname, item)
if os.path.isdir(item_path):
# 这里用了递归,
search(item_path, filename)
elif os.path.isfile(item_path):
if filename in item:
global result
# 很简单吧,不需要解释了,好累你直接拷下来就行了
result.append(item_path)

# 主方法,py文件就是从这里执行的
if __name__ == '__main__':
# 调用方法
search(dirname, filename)
# 创建写Excel文件的对象
workbook = xlwt.Workbook()
# 创建sheet
worksheet = workbook.add_sheet('test')
a = 0
for item in result:
# print(item)
# 获取数据
book = xlrd.open_workbook(item)
sheet = book.sheet_by_index(0)
# 获取值
value = sheet.col_values(colx=0)
# 获取值
value1 = sheet.row_values(rowx=2);
# 读取客户编码

for i in range(len(value)):
# print(i)
a = a + 1
print(value[i])
# 写入
worksheet.write(a,0,value[i])
temp = item.replace('D:\File\Mixed\用户文件夹\桌面\mz报表\合肥市直主副卡记录(1)\合肥市直主副卡记录\\', '')
# 写入
worksheet.write(a,1,value1)
# 写入
worksheet.write(a,2,temp)
# 保存文件
workbook.save(r'D:\File\Mixed\用户文件夹\桌面\mz报表\excelwrite1.xls')

就是上面的代码咯,有编程基础的不难理解,看看就懂了。

网抑云

回想起那些年的执着,到真像是一场笑话。

尾声

封面原图:

动漫女孩 黑发 露肩