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实现实例
Jun 20 Python
Django实现支付宝付款和微信支付的示例代码
Jul 25 Python
Python构建图像分类识别器的方法
Jan 12 Python
详解Python3定时器任务代码
Sep 23 Python
树莓派极简安装OpenCv的方法步骤
Oct 10 Python
Python timeit模块的使用实践
Jan 13 Python
Python PyQt5整理介绍
Apr 01 Python
python中shell执行知识点
May 06 Python
python的help函数如何使用
Jun 11 Python
python进度条显示-tqmd模块的实现示例
Aug 23 Python
python爬虫分布式获取数据的实例方法
Nov 26 Python
python实现简单石头剪刀布游戏
Oct 24 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
两种php调用Java对象的方法
2006/10/09 PHP
浅谈ThinkPHP的URL重写
2014/11/25 PHP
php为字符串前后添加指定数量字符的方法
2015/05/04 PHP
PHP超牛逼无限极分类生成树方法
2015/05/11 PHP
PHP PDOStatement::getAttribute讲解
2019/02/01 PHP
Javascript 构造函数,公有,私有特权和静态成员定义方法
2009/11/30 Javascript
ASP.NET中基于JQUERY的高性能的TreeView补充
2011/02/23 Javascript
js点击页面其它地方将某个显示的DIV隐藏
2012/07/12 Javascript
js仿百度有啊通栏展示效果实现代码
2013/05/28 Javascript
jQuery滚动条插件nanoscroller使用指南
2015/04/21 Javascript
解决Vue2.0自带浏览器里无法打开的原因(兼容处理)
2017/07/28 Javascript
浅谈node模块与npm包管理工具
2018/01/03 Javascript
vue.js将时间戳转化为日期格式的实现代码
2018/06/05 Javascript
React注册倒计时功能的实现
2018/09/06 Javascript
React-redux实现小案例(todolist)的过程
2019/09/29 Javascript
小程序跳转到的H5页面再跳转回跳小程序的方法
2020/03/06 Javascript
JavaScript对象字面量和构造函数原理与用法详解
2020/04/18 Javascript
python根据日期返回星期几的方法
2015/07/06 Python
python负载均衡的简单实现方法
2018/02/04 Python
Python生成器定义与简单用法实例分析
2018/04/30 Python
selenium使用chrome浏览器测试(附chromedriver与chrome的对应关系表)
2018/11/29 Python
Python 过滤错误log并导出的实例
2019/12/26 Python
python 实现"神经衰弱"翻牌游戏
2020/11/09 Python
aden + anais英国官网:美国婴儿贴身用品品牌
2019/09/08 全球购物
C,C++的几个面试题小集
2013/07/13 面试题
国际贸易专业个人求职信格式
2014/02/02 职场文书
学校安全教育月活动总结
2014/07/07 职场文书
验房委托书
2014/08/30 职场文书
党的群众路线教育实践活动心得体会范文
2014/11/05 职场文书
2014年酒店工作总结范文
2014/11/17 职场文书
《春酒》教学反思
2016/02/22 职场文书
2016五四青年节活动总结范文
2016/04/06 职场文书
如何才能写好调研报告?
2019/07/03 职场文书
当你找不到方向的时候,不妨读读刘备的一生
2019/08/05 职场文书
解决ObjectMapper.convertValue() 遇到的一些问题
2021/06/30 Java/Android
一次项目中Thinkphp绕过禁用函数的实战记录
2021/11/17 PHP