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

东西湖建设局网站深圳外贸10强公司

东西湖建设局网站,深圳外贸10强公司,长沙赶集网招聘最新招聘,新乡集团网站建设python修改Excel中的内容进阶加速版 前面有一篇文章讲到了使用python处理Excel中的数据文件#xff0c;即修改Excel中的数据#xff0c;但是那个版本的代码跑点小规模、小数据量的excel还行#xff0c;一旦数据量达到万条级别#xff0c;代码运行会非常慢#xff01;因此即修改Excel中的数据但是那个版本的代码跑点小规模、小数据量的excel还行一旦数据量达到万条级别代码运行会非常慢因此特意对之前的代码进行了优化大幅的提升了代码的运行速率。 1、修改思路 首先是使用库的区别操作Excel数据一般常用的两个库是Openpyxl和Pandas Openpyxl是一个用于读写Excel文件的Python库。它可以让你创建、修改和处理Excel文件包括读取、写入、复制、剪切、替换等操作。Openpyxl可以处理xlsx、xlsm、xltx、xltm等Excel文件格式并提供了丰富的API来进行数据操作和样式设置。Pandas是一个用于数据分析和数据处理的Python库。它提供了强大的数据结构和数据操作功能特别是对于结构化数据的处理非常方便。Pandas可以读取和写入多种文件格式包括Excel、CSV、JSON等。在数据处理方面Pandas可以进行数据筛选、排序、聚合、合并等多种操作并且支持处理缺失值和处理时间序列数据等常见问题。 总结来说Openpyxl主要用于Excel文件的读写和操作而Pandas则更适用于数据分析和数据处理。Openpyxl提供了更底层的操作可以直接对Excel文件进行读写和样式设置而Pandas则提供了更高层次的数据操作接口方便处理和分析结构化数据。两者在功能和应用场景上有所区别选择使用哪一个库取决于具体的需求和任务。 代码展示 使用openpyxl进行数据操作 import openpyxl# 打开Excel文件 workbook openpyxl.load_workbook(变量信息.xlsx)# 选择要操作的工作表 worksheet workbook.active# 遍历每一行 for row in worksheet.iter_rows():# 获取该行的第一个单元格的值cell_value row[1].value# 如果该行的字符串以X开头则将X替换为BJ1并拼接后续字符串同时保存数据if cell_value and str(cell_value).startswith(X or 1):new_value BJ1 str(cell_value)[1:]row[1].value new_valueworkbook.save(001.xlsx)print(new_value)if cell_value and str(cell_value).startswith(0):new_value BJ0 str(cell_value)[1:]row[1].value new_valueworkbook.save(001.xlsx)if cell_value and str(cell_value).startswith(9):new_value BJ9 str(cell_value)[1:]row[1].value new_valueworkbook.save(001.xlsx)# 否则遍历下一行else:continue处理数据不会改变原先的数据格式和数据类型但是运行速率较差 使用Pandas库进行数据修改 import pandas as pd# 读取Excel文件 df pd.read_excel(KIC.xlsx)# 遍历每一行 for i, row in df.iterrows():# 获取该行的第一个单元格的值cell_value row[1]# 如果该行的字符串以X或1开头则将X或1替换为BJ1并拼接后续字符串if cell_value and str(cell_value).startswith((X, 1)):new_value BJ1 str(cell_value)[1:]df.at[i, Column2] new_valueelif cell_value and str(cell_value).startswith(0):new_value BJ0 str(cell_value)[1:]df.at[i, Column2] new_valueelif cell_value and str(cell_value).startswith(9):new_value BJ9 str(cell_value)[1:]df.at[i, Column2] new_value# 将修改后的数据保存到新的Excel文件中 df.to_excel(KIC01.xlsx, indexFalse)使用Pandas操作Excel数据运行速率非常快但是会破坏Excel文件原先的文件格式 2、最终改进 要提升代码的运行速度可以考虑以下几个方面的优化 使用批量写入数据在当前代码中每次修改单元格后都会保存一次文件这会导致频繁的磁盘操作影响性能。可以将修改的数据先存储在一个临时的数据结构中然后一次性写入到Excel文件中。使用列表推导式或生成器表达式替代循环使用列表推导式或生成器表达式可以提供更高效的迭代方式避免使用显式的循环。这样可以减少迭代次数提升代码的执行速度。 下面是修改后的代码示例 import openpyxl# 打开Excel文件 workbook openpyxl.load_workbook(KIC.xlsx)# 选择要操作的工作表 worksheet workbook.active# 创建一个临时列表用于存储修改后的数据 new_data []# 遍历每一行 for row in worksheet.iter_rows():# 获取该行的第一个单元格的值cell_value row[1].value# 如果该行的字符串以X开头则将X替换为BJ1并拼接后续字符串同时保存数据if cell_value and str(cell_value).startswith((X, 1)):new_value BJ1 str(cell_value)[1:]elif cell_value and str(cell_value).startswith(0):new_value BJ0 str(cell_value)[1:]elif cell_value and str(cell_value).startswith(9):new_value BJ9 str(cell_value)[1:]else:# 如果不需要修改则直接保存原始数据new_value cell_value# 将修改后的数据添加到临时列表中new_data.append(new_value)# 将修改后的数据一次性写入Excel文件 for index, value in enumerate(new_data, start1):worksheet.cell(rowindex, column2, valuevalue)# 保存修改后的Excel文件 workbook.save(KIC04.xlsx)通过以上优化代码将会更高效地执行并提升运行速度。
http://www.tj-hxxt.cn/news/137028.html

相关文章:

  • 建设网站的条件北京网站建设成都
  • 华强北网站建设项目网络图怎么绘制
  • asp网站数据库连接网站建设怎么赚钱
  • 网站做相片无限元宝网页传奇
  • 电子商务网站建设方案书织梦cms收费7800
  • 手机自己制作表白网站app信誉好的中山网站建设
  • 做网站购买备案域名如何加强网站信息建设
  • 国外电子商务网站深圳画册设计公司排名
  • 做网站可以申请专利吗站点提交
  • 美食网站开发详细设计蓝天下品牌运营业务展示
  • 自己做烘焙的网站营销型网站一套
  • 北京网站建设 网络推广婚纱照网站模板
  • 高清做视频在线观看网站如何快速推广网上国网
  • 网站代码加密做二手的网站有哪些
  • 那个企业建网站好湘潭做网站公司选择封象网做网站公司
  • 跨境建站服务公司网站开发计入会计 什么科目
  • 东莞招聘网官方网站爱战网关键词挖掘查询工具
  • 营销型网站小学生手工
  • 承装承修承试材料在哪个网站做网站建设举措
  • asp net做网站视频镇江网站设计
  • 做卡贴的网站做的不好的网站
  • 网站的建设意见搜索网站老是跳出别的网站要怎么做
  • 建网站费用 优帮云桂林昨晚发生的新闻
  • 网站站群 硬盘扩容 申请报告类似AG网站建设
  • 计算机应用网站建设与维护是做什么恒大房地产最新消息
  • 设计logo网站生成器建设银行企业网站失败
  • 佛山新网站制作公司广告公司品牌营销推广
  • 上海网站优化海建站宝盒源代码
  • 手机做网站的网站上海建筑设计研究院
  • 做书的封面的网站素材wordpress怎么设置404