Python操作Excel的学习笔记


Posted in Python onFebruary 18, 2021

用 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))

Python操作Excel的学习笔记

获取工作表

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) # 获取工作表数量

Python操作Excel的学习笔记

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)) # 获取整列单元格内容

Python操作Excel的学习笔记

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)

Python操作Excel的学习笔记

用 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")

到此这篇关于Python 操作 Excel 学习笔记的文章就介绍到这了,更多相关Python 操作 Excel 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python的函数嵌套的使用方法
Jan 24 Python
Python中使用语句导入模块或包的机制研究
Mar 30 Python
Scrapy-redis爬虫分布式爬取的分析和实现
Feb 07 Python
Python生成数字图片代码分享
Oct 31 Python
python3 判断列表是一个空列表的方法
May 04 Python
python远程调用rpc模块xmlrpclib的方法
Jan 11 Python
python实现图片彩色转化为素描
Jan 15 Python
java中的控制结构(if,循环)详解
Jun 26 Python
Python的缺点和劣势分析
Nov 19 Python
Pytorch基本变量类型FloatTensor与Variable用法
Jan 08 Python
Django REST framwork的权限验证实例
Apr 02 Python
Python机器学习算法之决策树算法的实现与优缺点
May 13 Python
手把手教你用Django执行原生SQL的方法
Feb 18 #Python
python中封包建立过程实例
Feb 18 #Python
python解包用法详解
Feb 17 #Python
python压包的概念及实例详解
Feb 17 #Python
python解包概念及实例
Feb 17 #Python
requests在python中发送请求的实例讲解
Feb 17 #Python
python切片作为占位符使用实例讲解
Feb 17 #Python
You might like
shopex中集成的站长统计功能的代码简单分析
2011/08/11 PHP
Yii2框架使用计划任务的方法
2016/05/25 PHP
php使用GD2绘制几何图形示例
2017/02/15 PHP
PHP操作redis实现的分页列表,新增,删除功能封装类与用法示例
2018/08/04 PHP
使用TextRange获取输入框中光标的位
2006/10/14 Javascript
Jquery知识点一 Jquery的ready和Dom的onload的区别
2011/01/15 Javascript
框架页面高度自动刷新的Javascript脚本
2013/11/01 Javascript
JS使用oumousemove和oumouseout动态改变图片显示的方法
2015/03/31 Javascript
JavaScript html5 canvas绘制时钟效果
2016/03/01 Javascript
jQuery实现鼠标经过购物车出现下拉框代码(推荐)
2016/07/21 Javascript
基于Bootstrap的Metronic框架实现页面链接收藏夹功能
2016/08/29 Javascript
JavaScript实现无穷滚动加载数据
2017/05/06 Javascript
bootstrap table表格插件使用详解
2017/05/08 Javascript
vuex的简单使用教程
2018/02/02 Javascript
Angular @HostBinding()和@HostListener()用法
2018/03/05 Javascript
小程序实现多选框功能
2018/10/30 Javascript
详解React服务端渲染从入门到精通
2019/03/28 Javascript
Vue简单封装axios之解决post请求后端接收不到参数问题
2020/02/16 Javascript
快速解决element的autofocus失效问题
2020/09/08 Javascript
Python查询Mysql时返回字典结构的代码
2012/06/18 Python
python自动化测试之setUp与tearDown实例
2014/09/28 Python
python对离散变量的one-hot编码方法
2018/07/11 Python
基于python代码实现简易滤除数字的方法
2018/07/17 Python
Python爬虫:将headers请求头字符串转为字典的方法
2019/08/21 Python
python通用读取vcf文件的类(复制粘贴即可用)
2020/02/29 Python
Python unittest 自动识别并执行测试用例方式
2020/03/09 Python
解决运行出现'dict' object has no attribute 'has_key'问题
2020/07/15 Python
Python爬虫获取豆瓣电影并写入excel
2020/07/31 Python
如何利用Python写个坦克大战
2020/11/18 Python
Engel & Bengel官网:婴儿推车、儿童房家具和婴儿设备
2019/12/28 全球购物
CSMA/CD介质访问控制协议
2015/11/17 面试题
英语专业毕业生自荐信
2013/10/28 职场文书
银行员工职业规划范文
2014/01/21 职场文书
消费者投诉书范文
2015/07/02 职场文书
两行代码解决Jupyter Notebook中文不能显示的问题
2021/04/24 Python
Python下opencv库的安装过程及问题汇总
2021/06/11 Python