Python操作Excel的学习笔记
作者:Gettler•Main 时间:2022-04-02 16:43:29
用 xlrd 模块读取 Excel
xlrd 安装
cmd 中输入pip install xlrd
即可安装 xlrd
模块
若失败请自行百度”python配置环境变量“
xlrd 常用函数
打开,加载工作簿
import xlrd
data = xlrd.open_workbook("data1.xls") # 打开并加载,返回工作簿对象
print(data.sheet_loaded(0)) # 是否加载完成
data.unload_sheet(0) # 卸载
print(data.sheet_loaded(0))
获取工作表
import xlrd
data = xlrd.open_workbook("data1.xls") # 打开并加载,返回工作簿对象
print(data.sheets()) # 获取全部工作表
print(data.sheets()[0]) # 下标访问
print(data.sheet_by_name("Sheet1")) # 根据名字获取工作表 大小写严格!
print(data.sheet_by_index(0)) # 根据下标获取工作表
print(data.sheet_names()) # 获取所有工作表的name
print(data.nsheets) # 获取工作表数量
Excel 行操作与列操作
import xlrd
data = xlrd.open_workbook("data1.xls") # 打开并加载,返回工作簿对象
# 操作 Excel 行
sheet = data.sheet_by_index(0) # 获取第一个工作表
print(sheet.nrows) # 获取工作表行数
print(sheet.row(15)) # 该行单元格对象组成的列表
print(sheet.row_types(15)) # 获取单元格的数据类型
# type: 0 empty,1 string,2 number, 3 date,4 boolean, 5 error
print(sheet.row(15)[5].value) # 获取单元格内容
print(sheet.row_values(15)) # 获取整行单元格内容
print(sheet.row_len(15)) # 获取单元格长度
# 操作 Excel 列
sheet = data.sheet_by_index(1) # 获取第一个工作表
print(sheet.ncols) # 获取工作表列数
print(sheet.col(2)) # 该列单元格对象组成的列表
print(sheet.col_types(15)) # 获取单元格的数据类型
# type: 0 empty,1 string,2 number, 3 date,4 boolean, 5 error
print(sheet.col(15)[5].value) # 获取单元格内容
print(sheet.col_values(15)) # 获取整列单元格内容
Excel 单元格操作
import xlrd
data = xlrd.open_workbook("data1.xls") # 打开并加载,返回工作簿对象
# 操作 Excel 单元格
sheet = data.sheet_by_index(0)
print(sheet.cell(15, 7)) # 获取单元格
# 获取单元格的数据类型
print(sheet.cell_type(15, 7))
print(sheet.cell(15,7).ctype)
# 获取单元格内容
print(sheet.cell_value(15, 7))
print(sheet.cell(15,7).value)
用 xlwt 模块写入 Excel
xlrd 安装
cmd 中输入pip install xlwt
即可安装 xlwt
模块
创建工作簿并添加工作表
import xlwt
# 创建工作簿
wb = xlwt.Workbook()
# 添加工作表
ws = wb.add_sheet("绩点")
调整单元格样式
# 设置单元格样式
titlestyle = xlwt.XFStyle() # 初始化样式
titlefont = xlwt.Font()
titlefont.name = "楷体"
titlefont.bold = True # 加粗
titlefont.height = 11 * 20 # 字号
titlefont.colour_index = 0x08 # 字体颜色
titlestyle.font = titlefont
# 单元格对齐方式
cellalign = xlwt.Alignment()
cellalign.horz = 0x02 # 水平
cellalign.vert = 0x01 # 垂直
titlestyle.alignment = cellalign
# 边框
borders = xlwt.Borders()
borders.right = xlwt.Borders.DASHED
borders.bottom = xlwt.Borders.DOTTED
titlestyle.borders = borders
# 背景颜色
dataStyle = xlwt.XFStyle()
bgcolor = xlwt.Pattern()
bgcolor.pattern = xlwt.Pattern.SOLID_PATTERN
bgcolor.pattern_fore_colour = 22 # 背景颜色
dataStyle.pattern = bgcolor
填充数据
ws.write_merge(5, 6, 4, 6, "绩点", titlestyle) # (x1,y1,x2,y2,内容,样式)
# (x1,y1)到(x2,y2)之间合并单元格,并以相应样式填写内容
写入数据
data = (("学号", "第一学期", "第二学期"),
("201911040693", 2.971, 2.939),
("201911040694", 2.035, 2.487),
("201911040695", 2.709, 2.099),
("201911040696", 3.374, 3.388),
("201911040697", 2.646, 2.415))
for i, item in enumerate(data):
for j, val in enumerate(item):
ws.write(i + 7, j + 4, val, dataStyle) # (行,列,内容,样式)
# 填写数据
插入图片
ws.insert_bitmap("123.bmp", 20, 21)
保存文件
wb.save("前两学期绩点统计.xls")
来源:https://blog.csdn.net/qq_46039856/article/details/113802517
标签:Python,操作,Excel
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
给Notepad++换主题
2009-05-04 14:43:00
![](https://img.aspxhome.com/file/UploadPic/20095/4/rhtml-39s.gif)
python中map()与zip()操作方法
2023-11-11 08:09:29
Jupyter Notebook 远程访问配置详解
2023-09-11 03:19:06
![](https://img.aspxhome.com/file/2023/3/118633_0s.jpg)
J2EE基础应用:J2EE中SQL语句自动构造方法
2009-09-18 09:06:00
Python实现HTTP协议下的文件下载方法总结
2023-04-29 20:01:36
基于Python绘制520表白代码
2021-06-10 08:14:44
![](https://img.aspxhome.com/file/2023/6/64346_0s.png)
python自动发邮件库yagmail的示例代码
2022-01-15 14:23:26
![](https://img.aspxhome.com/file/2023/0/83720_0s.png)
Python利用turtle库绘制彩虹代码示例
2022-03-04 03:55:01
![](https://img.aspxhome.com/file/2023/3/72853_0s.png)
如何利用python读取图片属性信息
2023-12-24 00:57:51
![](https://img.aspxhome.com/file/2023/3/64353_0s.png)
Python实现将Excel转换成xml的方法示例
2023-01-19 23:02:53
django数据模型on_delete, db_constraint的使用详解
2023-02-16 04:48:06
GO语言的IO方法实例小结
2023-09-17 08:47:24
基于Python编写微信清理工具的示例代码
2022-03-04 09:02:54
![](https://img.aspxhome.com/file/2023/1/112821_0s.jpg)
python 如何获取文件夹中的全部文件
2022-09-10 16:48:11
![](https://img.aspxhome.com/file/2023/6/83966_0s.png)
python的变量与赋值详细分析
2022-06-14 23:09:44
![](https://img.aspxhome.com/file/2023/8/118528_0s.png)
Python使用scapy模块发包收包
2021-04-26 16:32:12
![](https://img.aspxhome.com/file/2023/9/69429_0s.jpg)
前端开发中的一些用户体验细节
2010-10-19 12:23:00
![](https://img.aspxhome.com/file/UploadPic/201010/19/01-17s.jpg)
python3 通过 pybind11 使用Eigen加速代码的步骤详解
2023-05-13 21:53:18
![](https://img.aspxhome.com/file/2023/7/80497_0s.png)
Python序列操作之进阶篇
2021-03-28 11:08:58
python argparse的使用步骤(全网最全)
2023-06-14 01:13:45
![](https://img.aspxhome.com/file/2023/9/59289_0s.png)