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导入oracle数据的方法
Jul 10 Python
Python爬虫辅助利器PyQuery模块的安装使用攻略
Apr 24 Python
Python实现按学生年龄排序的实际问题详解
Aug 29 Python
Python实现备份MySQL数据库的方法示例
Jan 11 Python
python构建深度神经网络(续)
Mar 10 Python
python抓取网站的图片并下载到本地的方法
May 22 Python
深入浅析Python传值与传址
Jul 10 Python
PyQt5固定窗口大小的方法
Jun 18 Python
对DJango视图(views)和模版(templates)的使用详解
Jul 17 Python
python多维数组分位数的求取方式
Mar 03 Python
Django的ListView超详细用法(含分页paginate)
May 21 Python
PyMongo 查询数据的实现
Jun 28 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
如何实现给定日期的若干天以后的日期
2006/10/09 PHP
PHP代码网站如何防范SQL注入漏洞攻击建议分享
2012/03/01 PHP
用php来限制每个ip每天浏览页面数量的实现思路
2015/02/24 PHP
PHP设计模式之简单工厂和工厂模式实例分析
2019/03/25 PHP
JavaScript网页制作特殊效果用随机数
2007/05/22 Javascript
JavaScript浏览器选项卡效果
2010/08/25 Javascript
关于include标签导致js路径找不到的问题分析及解决
2013/07/09 Javascript
js实现同一个页面多个渐变效果的方法
2015/04/10 Javascript
javascript组合使用构造函数模式和原型模式实例
2015/06/04 Javascript
js如何实现淡入淡出效果
2020/11/18 Javascript
JS判断是否长按某一键的方法
2016/03/02 Javascript
Bootstrap框架下下拉框select搜索功能
2020/03/26 Javascript
Bootstrap3 多个模态对话框无法显示的解决方案
2017/02/23 Javascript
mpvue 单文件页面配置详解
2018/12/02 Javascript
VUE的history模式下除了index外其他路由404报错解决办法
2019/08/21 Javascript
部署vue+Springboot前后端分离项目的步骤实现
2020/05/31 Javascript
JS出现404错误原理及解决方案
2020/07/01 Javascript
Vue2.x和Vue3.x的双向绑定原理详解
2020/11/05 Javascript
vue实现按钮切换图片
2021/01/20 Vue.js
[06:13]DOTA2进化论(修改版)
2013/10/08 DOTA
Django框架中render_to_response()函数的使用方法
2015/07/16 Python
使用Python对Csv文件操作实例代码
2017/05/12 Python
python web基础之加载静态文件实例
2018/03/20 Python
OpenCV模板匹配matchTemplate的实现
2019/10/18 Python
python二分法查找算法实现方法【递归与非递归】
2019/12/06 Python
Levi’s西班牙官方网站:李维斯,著名的牛仔裤品牌
2020/08/20 全球购物
超市后勤自我鉴定
2014/01/17 职场文书
小学科学教学反思
2014/01/26 职场文书
幼儿园新年寄语
2014/04/03 职场文书
党员民主生活会整改措施
2014/09/26 职场文书
书法社团活动总结
2015/05/07 职场文书
公司备用金管理制度
2015/08/04 职场文书
电力安全学习心得体会
2016/01/18 职场文书
《詹天佑》教学反思
2016/02/20 职场文书
JavaScript 语句之常用 for 循环详解
2021/03/29 Javascript
MySQL外键约束(Foreign Key)案例详解
2022/06/28 MySQL