当前位置: 首页 > news >正文

什么内容能提高网站流量新浪舆情通

什么内容能提高网站流量,新浪舆情通,网站空间合同,个人小程序开发教程Python能够轻松地从字节流中加载文件,在不依赖于外部存储的情况下直接对其进行读取、修改等复杂操作,并最终将更改后的文档保存回字节串中。这种能力不仅极大地提高了数据处理的灵活性,还确保了数据的安全性和完整性,尤其是在网络…

Python能够轻松地从字节流中加载文件,在不依赖于外部存储的情况下直接对其进行读取、修改等复杂操作,并最终将更改后的文档保存回字节串中。这种能力不仅极大地提高了数据处理的灵活性,还确保了数据的安全性和完整性,尤其是在网络传输或内存中处理敏感信息时。本文将介绍如何使用Python创建和保存Excel文件到字节流,以及读取和修改字节流中的Excel文件

文章目录

    • Python创建Excel文件并保存到字节流
    • Python直接读取字节流中的Excel文件
    • Python编辑字节流中的Excel文件

本文所使用的方法需要用到Spire.XLS for Python,PyPI:pip install spire.xls

Python创建Excel文件并保存到字节流

我们可以通过创建一个Workbook实例从而创建一个Excel工作簿,然后向其中添加数据并设置好格式,最后使用Workbook.SaveToStream()方法将其保存到指定的bytesbytearray中。以下是操作步骤示例:

  1. 导入所需模块。
  2. 创建Workbook对象从而新建一个Excel工作簿,新建的工作簿中会有三个默认工作表。
  3. 使用Workbook.Worksheets.get_Item()方法获取一个工作表。
  4. 定义数据列表,或从其他地方导入数据。
  5. 通过Worksheet.Range.get_Item().Value.NumberValue属性写入数据到工作表中。
  6. 通过CellRange.Style中的属性设置单元格格式。
  7. 使用Worksheet.AutoFitColumn()方法自动调整列宽。
  8. 创建Stream对象。
  9. 使用Workbook.SaveToStream()方法将Excel工作簿保存到Stream对象。
  10. Stream对象转换为bytesbytearray,或写入已有的bytearray中。
  11. 释放资源。

代码示例

from spire.xls import Workbook, FileFormat, Stream, Color, HorizontalAlignType# 创建一个工作簿实例
workbook = Workbook()# 获取第一个工作表
sheet = workbook.Worksheets.get_Item(0)# 创建或读取一个二维数据列表
data = [["书名", "作者", "出版年份", "类型", "价格 (人民币)"],["了不起的盖茨比", "F. Scott Fitzgerald", 1925, "小说", 10.99],["杀死一只知更鸟", "Harper Lee", 1960, "小说", 8.99],["1984", "George Orwell", 1949, "反乌托邦", 7.99],["傲慢与偏见", "Jane Austen", 1813, "浪漫", 6.99],["麦田里的守望者", "J.D. Salinger", 1951, "小说", 9.99],["美丽新世界", "Aldous Huxley", 1932, "反乌托邦", 8.49],["霍比特人", "J.R.R. Tolkien", 1937, "奇幻", 12.99],["动物庄园", "George Orwell", 1945, "寓言", 5.99],["指环王", "J.R.R. Tolkien", 1954, "奇幻", 14.99],["白鲸", "Herman Melville", 1851, "冒险", 11.99]
]# 将数据插入到工作表中
for i, row in enumerate(data):for j, value in enumerate(row):if isinstance(value, str):sheet.Range.get_Item(i + 1, j + 1).Value = valueelse:sheet.Range.get_Item(i + 1, j + 1).NumberValue = value# 格式化标题行
headerRow = sheet.AllocatedRange.Rows.get_Item(0)
headerRow.Style.Color = Color.FromRgb(77, 189, 155)
headerRow.Style.Font.FontName = "宋体"
headerRow.Style.Font.Size = 14
headerRow.Style.Font.IsBold = True
headerRow.Style.HorizontalAlignment = HorizontalAlignType.Center# 格式化数据行
for i in range(1, sheet.AllocatedRange.Rows.Count):row = sheet.AllocatedRange.Rows.get_Item(i)row.Style.Font.FontName = "宋体"row.Style.Font.Size = 12row.Style.HorizontalAlignment = HorizontalAlignType.Leftrow.Style.Color = Color.FromRgb(255, 253, 208)if i % 2 == 0:row.Style.Color = Color.FromRgb(255, 248, 183)# 自动调整列宽
for i in range(sheet.AllocatedRange.Columns.Count):sheet.AutoFitColumn(i + 1)# 创建一个流对象
stream = Stream()# 将工作簿保存到流中
workbook.SaveToStream(stream, FileFormat.Version2016)# 将流转换为字节
bytes_data = stream.ToArray()# 将字节写入文件或按需要使用
with open("output/CreateExcelByStream.xlsx", "wb") as file:file.write(bytes_data)

运行结果
Python创建Excel工作簿保存为字节流

Python直接读取字节流中的Excel文件

我们可以使用Workbook.LoadFromStream(Stream(bytes))方法直接从字节流中加载PDF文档,然后遍历工作表中已使用的单元格的行和列,通过Worksheet.AllocatedRange.get_Item().Value属性直接读取单元格数据。以下是操作步骤示例:

  1. 导入所需模块。
  2. 创建Workbook对象。
  3. 使用Workbook.LoadFromStream(Stream(bytes))方法从字节流中加载Excel文件。
  4. 使用Workbook.Worksheets.get_Item()方法获取指定工作表。
  5. 遍历工作表中已使用的行和列,使用Worksheet.AllocatedRange.get_Item().Value属性获取单元格数据。
  6. 输出单元格数据或用于其他操作。
  7. 释放资源。

代码示例

from spire.xls import Workbook, Stream# 创建一个字节对象或使用现有的字节对象
with open("output/CreateExcelByStream.xlsx", "rb") as file:bytes_data = file.read()# 创建一个工作簿实例
workbook = Workbook()# 从字节流加载Excel文件
workbook.LoadFromStream(Stream(bytes_data))# 获取第一个工作表
sheet = workbook.Worksheets.get_Item(0)# 从工作表读取数据
# 创建一个列表来存储数据
data = []
for i in range(sheet.AllocatedRange.Rows.Count):# 获取一行数据row = sheet.AllocatedRange.Rows.get_Item(i)# 创建一个列表来存储该行的数据row_data = []for j in range(row.Cells.Count):# 获取单元格的值cellValue = sheet.AllocatedRange.get_Item(i + 1, j + 1).Valuerow_data.append(cellValue)data.append(row_data)# 打印数据或按需使用
for row in data:print(row)# 释放资源
workbook.Dispose()

运行结果
Python读取字节流中的Excel文件的数据

Python编辑字节流中的Excel文件

同样,我们也可以使用Workbook.LoadFromStream(Stream(bytes))方法直接从bytesbytearray中加载PDF文档,并对其进行修改编辑,然后使用Workbook.SaveToStream()方法将其保存回字节流中,从而实现编辑字节流中的Excel文件。以下是操作步骤示例:

  1. 导入所需模块。
  2. 创建Workbook对象。
  3. 使用字节流创建Stream对象。
  4. 使用Workbook.LoadFromStream()方法从Stream对象加载Excel文件。
  5. 使用Workbook.Worksheets.get_Item()方法获取指定工作表。
  6. 根据需要修改格式。
  7. 使用Workbook.SaveToStream()方法将Excel工作簿保存回Stream对象。
  8. Stream对象转换为bytesbytearray
  9. 将字节流写入文件或用于其他用途。
  10. 释放资源。

代码示例

from spire.xls import Workbook, Stream, HorizontalAlignType, Color, FileFormat# 创建一个字节对象或使用现有的字节对象
with open("output/CreateExcelByStream.xlsx", "rb") as file:bytes_data = file.read()# 创建一个工作簿实例
workbook = Workbook()# 从字节流加载Excel文件
stream = Stream(bytes_data)
workbook.LoadFromStream(stream)
stream.Close()# 删除多余的工作表
#for i in range(1, workbook.Worksheets.Count):
#    workbook.Worksheets.Remove(workbook.Worksheets.get_Item(i))# 获取第一个工作表
sheet = workbook.Worksheets.get_Item(0)# 修改标题行的样式
headerRow = sheet.AllocatedRange.Rows.get_Item(0)
headerRow.Style.Font.Bold = False
headerRow.Style.Font.FontName = "Calibri"
headerRow.Style.Font.Size = 12
headerRow.Style.HorizontalAlignment = HorizontalAlignType.Left
headerRow.Style.Color = Color.FromRgb(92, 64, 131)# 修改数据行的样式
for i in range(1, sheet.AllocatedRange.Rows.Count):row = sheet.AllocatedRange.Rows.get_Item(i)row.Style.Font.FontName = "Calibri"row.Style.Font.Size = 11row.Style.Color = Color.FromRgb(255, 237, 206)if i % 2 == 0:row.Style.Color = Color.FromRgb(255, 228, 181)# 自动调整列宽
for i in range(sheet.AllocatedRange.Columns.Count):sheet.AutoFitColumn(i + 1)# 保存修改后的Excel文件
streamTemp = Stream()
workbook.SaveToStream(streamTemp, FileFormat.Version2016)# 将流转换回字节
bytes_data = streamTemp.ToArray()# 将字节写入文件或按需使用
with open("output/ModifiedExcel.xlsx", "wb") as file:file.write(bytes_data)

运行结果
Python修改字节流中的Excel工作簿

本文演示了如何用Python创建Excel工作簿保存到字节流,以及读取和修改字节流中的Excel工作簿。

申请免费License


文章转载自:
http://dinncowapenshaw.bkqw.cn
http://dinncoconclave.bkqw.cn
http://dinncospirited.bkqw.cn
http://dinncostubbornly.bkqw.cn
http://dinncobandspreading.bkqw.cn
http://dinncoprimaeval.bkqw.cn
http://dinncorustily.bkqw.cn
http://dinncohilliness.bkqw.cn
http://dinncosinkhole.bkqw.cn
http://dinncochristiana.bkqw.cn
http://dinncomiogeosyncline.bkqw.cn
http://dinncorebuild.bkqw.cn
http://dinncorollpast.bkqw.cn
http://dinncolisterine.bkqw.cn
http://dinncotertian.bkqw.cn
http://dinncorevealed.bkqw.cn
http://dinncokenbei.bkqw.cn
http://dinncopostmark.bkqw.cn
http://dinncocharkha.bkqw.cn
http://dinncoacouchi.bkqw.cn
http://dinncomanual.bkqw.cn
http://dinncothawless.bkqw.cn
http://dinncointermedium.bkqw.cn
http://dinncoandrophore.bkqw.cn
http://dinncoelastic.bkqw.cn
http://dinncoquatre.bkqw.cn
http://dinncoanelasticity.bkqw.cn
http://dinncomettled.bkqw.cn
http://dinncoendometria.bkqw.cn
http://dinncolaniary.bkqw.cn
http://dinnconecrotize.bkqw.cn
http://dinncojetavator.bkqw.cn
http://dinncoyulan.bkqw.cn
http://dinncotsadi.bkqw.cn
http://dinncomarcel.bkqw.cn
http://dinncopar.bkqw.cn
http://dinncorediffusion.bkqw.cn
http://dinncolaniary.bkqw.cn
http://dinncosafrole.bkqw.cn
http://dinncophelloderm.bkqw.cn
http://dinncorefreshing.bkqw.cn
http://dinncocreditor.bkqw.cn
http://dinncosnort.bkqw.cn
http://dinncobisulphate.bkqw.cn
http://dinncodistinguishable.bkqw.cn
http://dinncoinefficacy.bkqw.cn
http://dinncomesophile.bkqw.cn
http://dinncoorthogonalize.bkqw.cn
http://dinncoreseau.bkqw.cn
http://dinncohaman.bkqw.cn
http://dinncoisopycnosis.bkqw.cn
http://dinncometralgia.bkqw.cn
http://dinncoectomorphic.bkqw.cn
http://dinncosumach.bkqw.cn
http://dinncowindgall.bkqw.cn
http://dinncomeek.bkqw.cn
http://dinncohesione.bkqw.cn
http://dinncofianchetto.bkqw.cn
http://dinncoclever.bkqw.cn
http://dinncoquinquecentennial.bkqw.cn
http://dinncoirony.bkqw.cn
http://dinncoproteus.bkqw.cn
http://dinncodelocalise.bkqw.cn
http://dinncocurculio.bkqw.cn
http://dinncofelid.bkqw.cn
http://dinnconitid.bkqw.cn
http://dinncovaticinator.bkqw.cn
http://dinncotransvenous.bkqw.cn
http://dinncotahina.bkqw.cn
http://dinncoprincipality.bkqw.cn
http://dinncoeucolloid.bkqw.cn
http://dinncoagonist.bkqw.cn
http://dinncosot.bkqw.cn
http://dinncopollenosis.bkqw.cn
http://dinncoorient.bkqw.cn
http://dinncoabolishable.bkqw.cn
http://dinncoovercrust.bkqw.cn
http://dinncoideational.bkqw.cn
http://dinncogoodwood.bkqw.cn
http://dinncogorgonize.bkqw.cn
http://dinncorescissible.bkqw.cn
http://dinncosailfish.bkqw.cn
http://dinncooddly.bkqw.cn
http://dinncowomanlike.bkqw.cn
http://dinncodab.bkqw.cn
http://dinncoepaulette.bkqw.cn
http://dinncoshowground.bkqw.cn
http://dinncomammoth.bkqw.cn
http://dinncotigereye.bkqw.cn
http://dinncofoeticide.bkqw.cn
http://dinncotaper.bkqw.cn
http://dinncoclearinghouse.bkqw.cn
http://dinncofirbolgs.bkqw.cn
http://dinncosemistarved.bkqw.cn
http://dinncoflibbertigibbet.bkqw.cn
http://dinncoencoignure.bkqw.cn
http://dinncodeftly.bkqw.cn
http://dinncoburro.bkqw.cn
http://dinncodestructional.bkqw.cn
http://dinncoicw.bkqw.cn
http://www.dinnco.com/news/101804.html

相关文章:

  • 杭州倍世康 做网站免费招收手游代理
  • 单位网站建设有机房吗网站推广方案有哪些
  • 佛山网站专业制作seo方法培训
  • 班级网站建设网站测试浙江搜索引擎优化
  • 湖州民生建设有限公司网站营销型网站建设目标
  • 鄂尔多斯网站制作网络营销和传统营销的区别
  • 企业网站的形式疫情最新消息今天公布
  • web网站开发使用语言搜索引擎排行榜
  • 私活接单平台搜索引擎优化seo怎么做
  • 苏州个人网站建设qq群推广平台
  • 微积壹佰 网站建设线上营销有哪些
  • 济南做网站的哪家好下百度安装
  • 哈尔滨做网站的价格成都官网seo厂家
  • 做茶网站最全bt搜索引擎入口
  • 搭建网站吧seo知识总结
  • 怎么做一个赚钱得网站重庆seo网站运营
  • 中国建设企业网站官网软文广告平台
  • 免费注册购物网站网站链接提交
  • 山西建站上海百度推广排名优化
  • 做网站外包大学生竞价排名的弊端
  • 宁夏建设网站企业查询app
  • 苏州专业做网站比较好的公司爱站关键词挖掘old
  • 商丘网站建设推广哪家来电咨询网络广告营销案例
  • 怎么做网站投票选举网络营销是什么专业
  • 做网站的素材包含哪些seo内容优化心得
  • 网站做3年3年包括什么软件吗百度广告位
  • 企业安全文化的建设方案大丰seo排名
  • 网站资料如何做脚注chatgpt网站
  • dede移动端网站源码一套完整的运营方案
  • 建设旅游网站目的怎么开发一款app软件