当前位置:   article > 正文

如何用 Python 自动化操作 Excel?超详细!_python操作excel单元格

python操作excel单元格

在日常的工作中,对 Excel 的操作必不可少,如果涉及到大量的 Excel 操作的话,手动处理效率还是比较低的,因此 Excel 自动话完全有必要,今天我就和大家分享一下如何利用 Python 来批量化处理 Excel。

安装

Python 操作 Excel 主要用到两个库 xlrd 和 xlwt,前者负责读,后者负责写。
可以直接通过 pip 命令安装这两个库。

pip3 install xlrd
pip3 install xlwt
  • 1
  • 2

上手

咱先来看看读取模块,有如下的 Excel 文件。
在这里插入图片描述
1、获取 sheet

file_path = './person.xls'
data = xlrd.open_workbook(file_path)

names = data.sheet_names()
print(names)

# 输出结果
['list']
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

当然,我们也可以通过下标或者名称来获取指定的 sheet。

sheet = data.sheets()[0]
print(sheet)

sheet = data.sheet_by_name('list')
print(sheet)

# 输出结果
Sheet  0:<list>
Sheet  0:<list>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

2、行列操作
Excel 里每一个 sheet 都是由行和列组成的,先来看看行和列的操作。

rows = table.nrows
print(rows)
# 输出结果
4

cols = table.ncols
print(cols)
# 输出结果
3

print(table.row_slice(1))
# 输出结果
[text:'张三', number:18.0, text:'男']
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

通过行和列来读取 Excel 表格数据。

for row in range(rows):
    for col in range(cols):
        print(table.cell(row, col), table.cell_type(row, col))

# 输出结果
text:'name' 1
text:'age' 1
text:'sex' 1
text:'张三' 1
number:18.0 2
...
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

通过行和列向 Excel 中写入数据,写入数据就需要用到 xlwt 这个库了。

import xlwt
workbook = xlwt.Workbook(encoding=ascii)
worksheet = workbook.add_sheet('my sheet')  # 创建工作表

for i in range(10):
    for j in range(10):
        worksheet.write(i, j, i + j)  # 写入内容

workbook.save('data.xls')
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

在这里插入图片描述
当然,我们也可以对单元格做一些设置。

# 更改列宽:
worksheet.col(10).width = 256 * 20

# 更改行高:
style = xlwt.easyxf('font:height 360;')  # 18pt,类型小初的字号
row = worksheet.row(10)
row.set_style(style)

# 填充颜色
pattern = xlwt.Pattern()
pattern.pattern = xlwt.Pattern.SOLID_PATTERN
pattern.pattern_fore_colour = 2

style = xlwt.XFStyle()
style.pattern = pattern
worksheet.write(4, 4, '填充颜色', style)

# 边框样式
borders = xlwt.Borders()
borders.left = xlwt.Borders.DASHED
borders.right = xlwt.Borders.DASHED
borders.top = xlwt.Borders.THIN
borders.bottom = xlwt.Borders.THICK

style = xlwt.XFStyle()
style.borders = borders
worksheet.write(5, 5, '边框样式', style)

# 合并单元格
worksheet.write_merge(6, 7, 7, 9, '合并单元格')  # 合并 6-7 行,7-9 列
  • 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

在这里插入图片描述
今天和大家分享了如何通过 Python 来批量处理 Excel,希望能提高一下小伙伴们的工作效率。
关于 Excel 你有什么一些神操作方式呢,可以评论区和大家分享一下呀~

最后

作为一个IT的过来人,我自己整理了一些python学习资料,都是别人分享给我的,希望对你们有帮助。

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、Python必备开发工具

在这里插入图片描述

四、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。在这里插入图片描述

六、Python练习题

检查学习结果。
在这里插入图片描述

七、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述
这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/158973
推荐阅读
相关标签
  

闽ICP备14008679号