python的openpyxl模块的使用

  1. 1 背景
  2. 2 开源地址
  3. 3 简介
  4. 4 具体使用
    1. 4.1 创建工作簿
    2. 4.2 操作数据
      1. 读取数据
      2. 修改数据
  5. 5 总结

1 背景

今天舍友让我帮忙用python处理xlsx表格,但是自己还没意识到python还有这种强大的模块openpyxl,所以就拿来学习一下

2 开源地址

https://openpyxl.readthedocs.io/en/stable/

3 简介

openpyxl是一个Python库,用于读取/写入Excel 2010 xlsx / xlsm / xltx / xltm文件。

4 具体使用

4.1 创建工作簿

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 创建工作簿
from openpyxl import Workbook
wb = Workbook()

# 创建工作表,默认插在工作簿末尾
ws = wb.create_sheet()

# 工作表命令
ws.title = "ikun"

# 输出所有工作表
print(wb.get_sheet_names())

# 循环输出工作表
for sheet in wb:
print(sheet.title)

4.2 操作数据

为了实验效果,我事先找了以前的一个excel文档,里面有只有页Sheet1,其中数据内容如下

示例表格

读取数据

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
from openpyxl import load_workbook

# 读入data.xlsx的内容,并将其输入到iris中
fileHome = "d:/tmp/data.xlsx"
wb = load_workbook(filename = fileHome)
ws = wb["Sheet1"]

# 打印sheet页
print(wb.sheetnames)

# 打印第C列
print(ws["C"])

# 打印第4行
print(ws["4"])

# 打印第C4格的值
print(ws["C4"].value)

# 打印最大行数
print(ws.max_row)

# 打印最大列数
print(ws.max_column)

# 打印A列中的所有值
for i in ws["A"]:
print(i.value, end=" ")

print()

# 打印D列中的所有值
for i in range(100):
print(ws.cell(row = i + 1, column = 4).value, end =" ")

读取数据代码示例

修改数据

1
2
3
4
5
6
7
8
9
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
ws.title = "ikun"
ws['C3'] = 'Hello world!!!'
for i in range(10):
ws["A%d" % (i+1)].value = i + 1
ws["E1"].value = "=SUM(A:A)"
wb.save('d:/tmp/demo.xlsx')

修改数据代码示例

5 总结

通过这次使用openpyxl模块,我又一次被python震撼了,从此以后为了自己的头发,还是多用python吧
(#^.^#)(#^.^#)(#^.^#)


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达,可以邮件至 xingshuaikun@163.com。

×

喜欢就点赞,疼爱就打赏