小白学 Python(24):Excel 基础操作(下)

继承苔藓
• 阅读 2839

小白学 Python(24):Excel 基础操作(下)

人生苦短,我选Python

前文传送门

小白学 Python(1):开篇

小白学 Python(2):基础数据类型(上)

小白学 Python(3):基础数据类型(下)

小白学 Python(4):变量基础操作

小白学 Python(5):基础运算符(上)

小白学 Python(6):基础运算符(下)

小白学 Python(7):基础流程控制(上)

小白学 Python(8):基础流程控制(下)

小白学 Python(9):基础数据结构(列表)(上)

小白学 Python(10):基础数据结构(列表)(下)

小白学 Python(11):基础数据结构(元组)

小白学 Python(12):基础数据结构(字典)(上)

小白学 Python(13):基础数据结构(字典)(下)

小白学 Python(14):基础数据结构(集合)(上)

小白学 Python(15):基础数据结构(集合)(下)

小白学 Python(16):基础数据类型(函数)(上)

小白学 Python(17):基础数据类型(函数)(下)

小白学 Python(18):基础文件操作

小白学 Python(18):基础文件操作

小白学 Python(19):基础异常处理

小白学 Python(20):迭代器基础

小白学 Python(21):生成器基础

小白学 Python(22):time 和 calendar 模块简单使用

小白学 Python(23):Excel 基础操作(上)

在这里首先恭喜各位看到本篇连载的同学,本篇连载为 《小白学 Python 基础系列》 最后一篇,恭喜各位在学习 Python 的道路上迈出了坚实的一大步。

小白学 Python(24):Excel 基础操作(下)

写入 Excel

首先当然是安装第三方模块:

pip install openpyxl

首先我们需要先创建一个 WorkBook :

import xlsxwriter

workbook = xlsxwriter.Workbook('demo.xlsx')

在所有操作之前,需要记得先导入我们刚才安装的 xlsxwriter 的模块。

接下来,我们创建一个 Sheet :

sheet1 = workbook.add_worksheet('test_sheet')

创建完成后,需要关闭 workbook ,这一步会将我们刚才创建的 workbook 进行保存。

workbook.close()

好了,我们已经创建好了一个 excel ,操作结束,下课。

老师,你回来,这就完了?

小白学 Python(24):Excel 基础操作(下)

我们接着介绍如何将数据写入至 Excel 中。

首先我们可以先设置一些的单元格的格式:

workfomat = workbook.add_format()
# 字体加粗
workfomat.set_bold(True)
# 单元格边框宽度
workfomat.set_border(1)
# 对齐方式
workfomat.set_align('left')
# 格式化数据格式为小数点后两位
workfomat.set_num_format('0.00')

然后我们将内容写入,具体内容小编懒得想了,直接复制上一篇文章中的内容:

heads = ['', '语文', '数学', '英语']
datas = [
    ['小明', 76, 85, 95],
    ['小红', 85, 58, 92],
    ['小王', 98, 96, 91]
]

sheet1.write_row('A1', heads, workfomat)

sheet1.write_row('A2', datas[0], workfomat)
sheet1.write_row('A3', datas[1], workfomat)
sheet1.write_row('A4', datas[2], workfomat)

然后执行程序,我们来看下最终输出的结果:

小白学 Python(24):Excel 基础操作(下)

除了可以这样输出以外,我们还可以指定输出的单元格格式:

我们列举一个比较复杂的输出日期类型:

fomat1 = workbook.add_format({'num_format': 'yy/mm/dd/ hh:mm:ss'})

sheet1.write_datetime('E5', datetime.datetime(2019, 11, 9, 22, 44, 26), fomat1)

注意: 上面的格式化一定要加,否则在 Excel 中显示出来的只会是一个时间戳。

其他的输出类型小编这里就不一一举例了,下面列出一些常用的:

# 字符串类型
sheet1.write_string()
# 数字型
sheet1.wirte_number()
# 空类型
sheet1.write_blank()
# 公式
sheet1.write_formula()
# 布尔型
sheet1.write_boolean()
# 超链接
sheet1.write_url()

我们还可以在 Excel 中插入图片,样例如下:

sheet1.insert_image('I6', 'wx.jpg')

语法如下:

insert_image(row, col, image[, options])

row:行坐标,起始索引值为0;
col:列坐标,起始索引值为0;
image:string类型,是图片路径;
options:dict类型,是可选参数,用于指定图片位置,如URL等信息;

我们还可以在 Excel 中绘图,支持包括面积、条形图、柱状图、折线图、散点图等。

图表对象是通过 Workbook add_chart() 方法创建的,其中指定了图表类型:

chart = workbook.add_chart({'type': 'column'})

常见的图表样式如下:

area:面积样式的图表
bar:条形图
column:柱状图
line:线条样式的图表
pie:饼形图
scatter:散点图
stock:股票样式的图表
radar:雷达样式的图表

然后使用 insert_chart() Worksheet方法将其作为嵌入的图表插入到工作表中:

sheet1.insert_chart('A7', chart)

完整示例如下:

chart = workbook.add_chart({'type': 'column'})

chart.add_series({'values': '=test_sheet!$B$2:$B$4'})
chart.add_series({'values': '=test_sheet!$C$2:$C$4'})
chart.add_series({'values': '=test_sheet!$D$2:$D$4'})

sheet1.insert_chart('A7', chart)

结果如下:

小白学 Python(24):Excel 基础操作(下)

一些常用的简单的操作就介绍到这里,想了解更多的同学可以访问官方文档,链接小编已经找出来了:https://xlsxwriter.readthedoc...

示例代码

本系列的所有代码小编都会放在代码管理仓库 Github 和 Gitee 上,方便大家取用。

示例代码-Github

示例代码-Gitee

小白学 Python(24):Excel 基础操作(下)

如果我的文章对您有帮助,请扫码关注下作者的公众号:获取最新干货推送:)

点赞
收藏
评论区
推荐文章
梦
4年前
微信小程序new Date()转换时间异常问题
微信小程序苹果手机页面上显示时间异常,安卓机正常问题image(https://imghelloworld.osscnbeijing.aliyuncs.com/imgs/b691e1230e2f15efbd81fe11ef734d4f.png)错误代码vardate'2021030617:00:00'vardateT
Aidan075 Aidan075
4年前
原来Python绘图也可以这么漂亮,这次真的是学习到了!
(https://imghelloworld.osscnbeijing.aliyuncs.com/8830803f033eeed85783e9058cf08968.png)作者:朱小五来源:快学Python👆人生苦短,快学Python!最近看了一篇文章《一个牛逼的Python可视化库:PyG2Plot》,可惜只是简单介
java一生之敌 java一生之敌
2年前
JVM的内存模型和优化方式
一、JVM的内存模型1.!图片(https://imghelloworld.osscnbeijing.aliyuncs.com/imgs/52b2220f04010eb329efbef966f9fa40.png)其中s0,s1为幸
Stella981 Stella981
3年前
Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''
Stella981 Stella981
3年前
Python环境搭建—安利Python小白的Python和Pycharm安装详细教程
人生苦短,我用Python。众所周知,Python目前越来越火,学习Python的小伙伴也越来越多。最近看到群里的小伙伴经常碰到不会安装Python或者不知道去哪下载Python安装包等系列问题,为了方便大家学习Python,小编整理了一套Python和Pycharm安装详细教程,只要大家按照这个步骤来,就可以轻松的搞定Python和Pycharm的安装了。
Stella981 Stella981
3年前
Asp.Net Core和Django如何选择
一、前言最近经常听说“人生苦短,我选python”这句话,为什么python拥有如此多的粉丝,她和c、java静态语言有哪些区别和优略呢?本篇将对python、c主流的web框架Django和Asp.NetCore做一些分析,带给大家更多的技术认知。什么是DjangoDjango是使用python语言开发的一套web框架,
Stella981 Stella981
3年前
FastAPI 作为集大成者,它的灵感来自哪里?
人生苦短,我用Python。在看到FastAPI在首期「OSC开源软件趋势榜」(https://www.oschina.net/project/2020/q1_projects_trending)名列前茅,作为一个Pythoner,顿时对它产生了浓厚的兴趣,于是立即开始了FastAPI体验之旅。何为FastAPI?
Stella981 Stella981
3年前
Python快速入门(一)
引言Python作为一个,目前最火的编程语言之一,已经渗透到了各行各业。它易学好懂,拥有着丰富的库,功能齐全。人生苦短,就用Python。这个快速入门系列分为六篇,包含了Python大部分基础知识,每篇阅读时间不长,且内容含量高。大家最好亲自码一遍代码,这样可以更有收获。概要
Stella981 Stella981
3年前
Python快速入门(四)
引言Python作为一个,目前最火的编程语言之一,已经渗透到了各行各业。它易学好懂,拥有着丰富的库,功能齐全。人生苦短,就用Python。这个快速入门系列分为六篇,包含了Python大部分基础知识,每篇阅读时间不长,但内容含量高。大家最好亲自码一遍代码,这样可以更有收获。概要
Python进阶者 Python进阶者
2年前
尝试安装包的时候遇到的这样的错误,然后我尝试更新pip发现几乎报了同样的错,如何解决?
大家好,我是皮皮。一、前言前几天在Python白银群【黑白人生】问了一个Python基础的问题,这里拿出来给大家分享下。二、实现过程这里【ChatGPT】给出了一个思路,如下所示:开代理可能会影响Python库安装,原因如下:1.代理可能会阻止Python
新支点小玉 新支点小玉
1年前
CNAS资质认证,快速出证,欢迎咨询
!11284(https://imghelloworld.osscnbeijing.aliyuncs.com/imgs/4e90dd6f80dd2c80bdd3dc5e7d686a41.jpg)