人生苦短, 我选 Python
前文传送门
小白学 Python(1): 开篇 https://www.geekdigging.com/2019/10/12/2870915863/
小白学 Python(2): 基础数据类型 (上) https://www.geekdigging.com/2019/10/13/2870915864/
小白学 Python(3): 基础数据类型 (下) https://www.geekdigging.com/2019/10/15/25090937/
小白学 Python(4): 变量基础操作 https://www.geekdigging.com/2019/10/17/2392286754/
小白学 Python(5): 基础运算符 (上) https://www.geekdigging.com/2019/10/18/999362065/
小白学 Python(6): 基础运算符 (下) https://www.geekdigging.com/2019/10/20/2416267271/
小白学 Python(7): 基础流程控制 (上) https://www.geekdigging.com/2019/10/22/979409150/
小白学 Python(8): 基础流程控制 (下) https://www.geekdigging.com/2019/10/23/2184234984/
小白学 Python(9): 基础数据结构 (列表)(上) https://www.geekdigging.com/2019/10/23/3066758654/
小白学 Python(10): 基础数据结构 (列表)(下) https://www.geekdigging.com/2019/10/25/1277177083/
小白学 Python(11): 基础数据结构 (元组) https://www.geekdigging.com/2019/10/26/1783681326/
小白学 Python(12): 基础数据结构 (字典)(上) https://www.geekdigging.com/2019/10/27/1304658395/
小白学 Python(13): 基础数据结构 (字典)(下) https://www.geekdigging.com/2019/10/27/2327215405/
小白学 Python(14): 基础数据结构 (集合)(上) https://www.geekdigging.com/2019/10/29/2327215406/
小白学 Python(15): 基础数据结构 (集合)(下) https://www.geekdigging.com/2019/10/30/3105860436/
小白学 Python(16): 基础数据类型 (函数)(上) https://www.geekdigging.com/2019/10/31/3818474124/
小白学 Python(17): 基础数据类型 (函数)(下) https://www.geekdigging.com/2019/11/01/619492986/
小白学 Python(18): 基础文件操作 https://www.geekdigging.com/2019/11/01/3195979051/
小白学 Python(18): 基础文件操作 https://www.geekdigging.com/2019/11/01/3195979051/
小白学 Python(19): 基础异常处理 https://www.geekdigging.com/2019/11/03/271169345/
小白学 Python(20): 迭代器基础 https://www.geekdigging.com/2019/11/05/1111962512/
小白学 Python(21): 生成器基础 https://www.geekdigging.com/2019/11/06/988349733/
小白学 Python(22):time 和 calendar 模块简单使用 https://www.geekdigging.com/2019/11/07/908307735/
小白学 Python(23):Excel 基础操作 (上) https://www.geekdigging.com/2019/11/07/3507147382/
在这里首先恭喜各位看到本篇连载的同学, 本篇连载为 《小白学 Python 基础系列》 最后一篇, 恭喜各位在学习 Python 的道路上迈出了坚实的一大步.
写入 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 , 操作结束, 下课.
老师, 你回来, 这就完了?
我们接着介绍如何将数据写入至 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)
然后执行程序, 我们来看下最终输出的结果:
除了可以这样输出以外, 我们还可以指定输出的单元格格式:
我们列举一个比较复杂的输出日期类型:
- 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)
结果如下:
一些常用的简单的操作就介绍到这里, 想了解更多的同学可以访问官方文档, 链接小编已经找出来了: https://xlsxwriter.readthedocs.io/ .
示例代码
本系列的所有代码小编都会放在代码管理仓库 GitHub 和 Gitee 上, 方便大家取用.
示例代码 - GitHub
示例代码 - Gitee
来源: https://www.cnblogs.com/babycomeon/p/11886983.html