Python操作Excel的学习笔记
作者:Gettler•Main 发布时间:2022-04-02 16:43:29
标签:Python,操作,Excel
用 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


猜你喜欢
- PHP ini_set用来设置php.ini的值,在函数执行的时候生效,脚本结束后,设置失效。无需打开php.ini文件,就能修改配置,对于
- win7以上需要使用管理员权限操作。# -*- coding: utf-8 -*-import osimport globimport sh
- 之前写了一个ajax上传工具。但是只是客户端的工具是我写的,服务器端的那个程序,我是修改了一个网上流传的无组件上传类。因为当时我还不懂什么a
- 我就废话不多说了,大家还是直接看代码吧~package mainimport ( "net/http")func mai
- for...[if]...构建List (List comprehension)1.简单的for...[if]...语句Python中,fo
- 现在大家学习python掌握内容了解太多太多,但是最重要的不是掌握了解算法的使用,而是了解算法原理远比使用算法命令更重要,现在大家了解算法应
- 引言微信群的用户添加逻辑是 —— 当群人数达到100人后,用户无法再通过扫描群二维码加入,只能让用户先添加群内联系人微信,再由联系人把用户拉
- 本文实例讲述了PHP使用flock实现文件加锁的方法。分享给大家供大家参考。具体分析如下:flock在官方文档里的解释是:flock() 允
- 背景开发项目时应学会站在巨人的肩膀上,即有效利用开发组件进行或工具提升自己的研发效率对于较简单的单体函数而言,只需要依赖原生的SDK即可完成
- 本文实例讲述了python使用urllib2提交http post请求的方法。分享给大家供大家参考。具体实现方法如下:#!/usr/bin/
- 回顾在前面的系列章节中,我们创建了一个数据库并且学着用用户和邮件来填充,但是到现在我们还没能够植入到我们的程序中。 两章之前,我
- 当感觉mysql性能出现问题时,通常会先看下当前mysql的执行状态,使用 show processlist 来查看,例如:其中state状
- 首先打开网站https://www.zymk.cn/1/37988.html打开开发者工具选择XHR标签页,没有找到什么再查看一下这些图片的
- 需求分析现在是 "图片为王"的时代,在浏览一些网站时,经常会看到类似于这种满屏都是图片。图片大小不一,却按空间排列,就这
- 1. 生命周期(重要)1.1 初步认识生命周期别名:生命周期回调函数、生命周期函数、生命周期钩子。生命周期是什么?Vue在关键时刻帮我们调用
- 本文实例为大家分享了pygame实现贪吃蛇小游戏的具体代码,供大家参考,具体内容如下由于这段时间实在是太聊了,没什么事做,游戏也玩腻了,所以
- JavaScript Date.toDateString()方法返回一个Date对象的人类可读形式的日期部分。语法Date.to
- 问题:编写一个在1,2,…,9(顺序不能变)数字之间插入+或-或什么都不插入,使得计算结果总是100的程序,并输出所有的可能性。例如:1 +
- 一、tooltip(提示框) 源码文件: Tooltip.jsTooltip.scss实现原理: 1、获取当前
- 一、简述最近接到一个新需求,让做一个动效进度条。由于我们的产品比较大,在软件启动的时候会消耗比较长的时间,原生的进度条已经不能满足我们的需求