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的Flask框架中配置多个子域名的方法讲解
Jun 07 Python
Python排序搜索基本算法之堆排序实例详解
Dec 08 Python
Python实现进程同步和通信的方法
Jan 02 Python
Python实现在tkinter中使用matplotlib绘制图形的方法示例
Jan 18 Python
python使用PIL和matplotlib获取图片像素点并合并解析
Sep 10 Python
python同时替换多个字符串方法示例
Sep 17 Python
python实现简易学生信息管理系统
Apr 05 Python
pandas read_excel()和to_excel()函数解析
Sep 19 Python
Python3实现监控新型冠状病毒肺炎疫情的示例代码
Feb 13 Python
python爬虫用mongodb的理由
Jul 28 Python
Python利用Faiss库实现ANN近邻搜索的方法详解
Aug 03 Python
selenium+python实现基本自动化测试的示例代码
Jan 27 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实现的简单分页类及用法示例
2016/05/06 PHP
JavaScript为对象原型prototype添加属性的两种方式
2010/08/01 Javascript
JavaScript随机排序(随即出牌)
2010/09/17 Javascript
js实现图片和链接文字同步切换特效的方法
2015/02/20 Javascript
[原创]Javascript 实现广告后加载 可加载百度谷歌联盟广告
2016/05/11 Javascript
对Js OOP编程 创建对象的一些全面理解
2016/07/26 Javascript
vue中用动态组件实现选项卡切换效果
2017/03/25 Javascript
Vue2.0 实现歌手列表滚动及右侧快速入口功能
2018/08/08 Javascript
基于进程内通讯的python聊天室实现方法
2015/06/28 Python
Python Requests 基础入门
2016/04/07 Python
Django 前后台的数据传递的方法
2017/08/08 Python
Python KMeans聚类问题分析
2018/02/23 Python
Python生成短uuid的方法实例详解
2018/05/29 Python
解决Mac安装scrapy失败的问题
2018/06/13 Python
python3个性签名设计实现代码
2018/06/19 Python
Anaconda2 5.2.0安装使用图文教程
2018/09/19 Python
Python安装pycurl失败的解决方法
2018/10/15 Python
python之信息加密题目详解
2019/06/26 Python
python2爬取百度贴吧指定关键字和图片代码实例
2019/08/14 Python
pymysql模块的操作实例
2019/12/17 Python
Python计算公交发车时间的完整代码
2020/02/12 Python
通过python调用adb命令对App进行性能测试方式
2020/04/23 Python
html5+css3进度条倒计时动画特效代码【推荐】
2016/03/08 HTML / CSS
彪马英国官网:PUMA英国
2019/02/11 全球购物
ParcelABC西班牙:包裹运送和快递服务
2019/12/24 全球购物
毕业生个人求职自荐信
2014/02/26 职场文书
工作鉴定评语
2014/05/04 职场文书
我爱我的祖国演讲稿
2014/05/04 职场文书
党的群众路线教育实践活动个人对照检查材料(教师)
2014/11/04 职场文书
少年派的奇幻漂流观后感
2015/06/08 职场文书
小学班级管理心得体会
2016/01/07 职场文书
工伤调解协议书
2016/03/21 职场文书
postgresql使用filter进行多维度聚合的解决方法
2021/07/16 PostgreSQL
详解gantt甘特图可拖拽、编辑(vue、react都可用 highcharts)
2021/11/27 Vue.js
pandas进行数据输入和输出的方法详解
2022/03/23 Python
4种方法python批量修改替换列表中元素
2022/04/07 Python