Python中的openpyxl的基本用法及相关概念有哪些
Admin 2022-08-16 群英技术资讯 1432 次浏览
这篇文章给大家分享的是Python中的openpyxl的基本用法及相关概念有哪些。小编觉得挺实用的,因此分享给大家做个参考,文中的介绍得很详细,而要易于理解和学习,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。Openpyxl是python中简单易用的操作excel电子表格的一个模块。接下来呢,跟博主一起学习一下吧 ----_<_>_----
首先先清楚一些excel的基本概念:
在openpyxl中,主要用到三个概念:Workbooks,Sheets,Cells。Workbook就是一个excel工作表;Sheet是工作表中的一张表页;Cell就是简单的一个格。openpyxl就是围绕着这三个概念进行的,不管读写都是“三板斧”:打开Workbook,定位Sheet,操作Cell。
总结:
安装
pip install openpyxl
接下来就介绍一下简单的操作
# -*- coding:utf-8 -*-
# 导入
from openpyxl import workbook
from openpyxl import load_workbook
# 打开一个供作薄
wb = load_workbook('file_name.xlsx')
# 获取一张表
sheet = wb.get_sheet_by_name("Sheet1")
# 获取A1格的值
print sheet['A1'].value
# 获取表的最大工作行数
print sheet.max_row
# 获取表的最大工作列数
print sheet.max_column
# 打印C列的所有内容(以下格式代表不换行)
for i in sheet["C"]:
print i.value, ' ',
print ''
# 打印1行的所有内容
for i in sheet["1"]:
print i.value, ' ',
print ''
注意:当读到的内容为None时说明该表格中的内容为空
接下来呢新创建一个新的工作薄
# -*- coding:utf-8 -*-
from openpyxl import Workbook
# 创建一个工作薄
wb = Workbook()
# 创建一个工作表(注意是一个属性)
sheet = wb.active
# excel创建的工作表名默认为sheet1,一下代码实现了给新创建的工作表创建一个新的名字
sheet.title = 'create_sheet'
# 向工作表中输入内容
sheet['C3'] = 'hello word'
for i in range(10):
sheet['A%d' % (i+1)] = i+1
# 向excel表中输入表达试
sheet['C2'] = '=SUM(A:A)'
# 保存一个文档
wb.save('create_excel.xlsx')
if __name__ == '__main__':
pass
保存之后会出现一下样式

思想:将信息保存到字符串缓冲区,然后指定返回到客户端的格式为excel格式即可
代码:
from openpyxl import load_workbook wb = load_workbook('file_name.xlsx') from io import BytesIO output = BytesIO() sheet = wb[wb.get_sheet_names()[0]] # 获取第一个工作区 sheet['A3'] = 'kayb' wb.save(output) # 将wb文件保存到缓存区中 response = HttpResponse(content_type='application/vnd.ms-excel') response['Content-Disposition'] = 'attachment;filename={0}.xlsx'.format(‘file_name’) response.write(output.getvalue()) # 获取缓冲区当中的值 return response
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
python的两个单元测试包分别是 doctest 和 unittest,这两个包的使用起来各有长处,适用于不同的场景,这篇文章主要介绍了Python单元测试的两种写法,需要的朋友可以参考下
Python内置函数-divmod()函数。Python divmod() 函数接收两个数字类型(非复数)参数,返回一个包含商和余数的元组(a // b, a % b)。在 python 3.x 版本该函数不支持复数。
Python基础-PEP8 提供了 Python 代码的编写约定. 本节知识点旨在提高代码的可读性, 并使其在各种 Python 代码中编写风格保持一致.
paramiko实现了SSHv2协议(底层使用cryptography),用于连接远程服务器并执行相关操作,使用该模块可以对远程服务器进行命令或文件操作,今天通过本文给大家介绍Python远程SSH库Paramiko简介,感兴趣的朋友一起看看吧
这篇文章主要为大家介绍了Django ContentType组件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008