python对Excel按条件进行内容补充(推荐)


Posted in Python onNovember 24, 2019

关于xlrd/xlwt和openpyxl的差别

两者都是对于excel文件的操作插件,两者的主要区别在于写入操作,

其中xlwt针对Ecxec2007之前的版本,即.xls文件,其要求单个sheet不超过65535行,
而openpyxl则主要针对Excel2007之后的版本(.xlsx),它对文件大小没有限制。

另外还有区别就是二者在读写速度上的差异,xlrd/xlwt在读写方面的速度都要优于openpyxl,但xlwt无法生成xlsx

openpyxl的用法

官方文档

先了解下Worksheet.cell() 方法。

这提供了对使用行和列表示法的单元格的访问:

d = ws.cell(row=4, column=2, value=10)

获取某个单元格的数据

#通过坐标读取表格中的数据
cell_value1=sheet0.cell_value(y,x)

数据写入

import openpyxl
import datetime
wb = openpyxl.Workbook()
ws = wb.active
ws['A1'] = 520
ws.append([1,2,3])
ws['A3'] = datetime.datetime.now()
wb.save("F:/demo.xlsx")

数据更新

import openpyxl
'''
操作Excel

需求:数据1的内容需要数据2补充 关联关系是都存在唯一的工号

'''
def excel():
  wb1 = openpyxl.load_workbook('数据1.xlsx')  #路径
  sheet1 = wb1.active
  wb2 = openpyxl.load_workbook('数据2.xlsx')
  sheet2 = wb2.active
  for i in range(2, 1211): #数据1.xlsx的数据量
    id2 = sheet2.cell(i, 2).value  #获取数据1唯一工号
    for j in range(2, 1225): #数据2.xlsx的数据量
      id1 = sheet1.cell(j, 2).value #获取数据2唯一工号
      if(id1 == id2):
        sheet1.cell(j, 5).value = sheet2.cell(i, 5).value  #赋值
        sheet1.cell(j, 8).value = sheet2.cell(i, 1).value
        sheet1.cell(j, 7).value = sheet2.cell(i, 6).value
  wb1.save('xg3.xlsx') #存入到一张新的excel表中

if __name__ == "__main__":
  excel()

总结

以上所述是小编给大家介绍的python对Excel按条件进行内容补充,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Python 相关文章推荐
简单谈谈python的反射机制
Jun 28 Python
Python 爬虫学习笔记之单线程爬虫
Sep 21 Python
Python基于time模块求程序运行时间的方法
Sep 18 Python
在win10和linux上分别安装Python虚拟环境的方法步骤
May 09 Python
python实现websocket的客户端压力测试
Jun 25 Python
利用 Flask 动态展示 Pyecharts 图表数据方法小结
Sep 04 Python
Python使用Slider组件实现调整曲线参数功能示例
Sep 06 Python
python和pywin32实现窗口查找、遍历和点击的示例代码
Apr 01 Python
浅谈opencv自动光学检测、目标分割和检测(连通区域和findContours)
Jun 04 Python
基于python实现删除指定文件类型
Jul 21 Python
详解Selenium 元素定位和WebDriver常用方法
Dec 04 Python
python实现发送QQ邮件(可加附件)
Dec 23 Python
使用Python的datetime库处理时间(RPA流程)
Nov 24 #Python
Python 中判断列表是否为空的方法
Nov 24 #Python
python3中利用filter函数输出小于某个数的所有回文数实例
Nov 24 #Python
python求质数列表的例子
Nov 24 #Python
解决Python中回文数和质数的问题
Nov 24 #Python
使用python实现回文数的四种方法小结
Nov 24 #Python
python代码打印100-999之间的回文数示例
Nov 24 #Python
You might like
改进的IP计数器
2006/10/09 PHP
PHP 中文乱码解决办法总结分析
2009/07/30 PHP
解析用PHP读写音频文件信息的详解(支持WMA和MP3)
2013/05/10 PHP
PHP中可以自动分割查询字符的Parse_str函数使用示例
2014/07/25 PHP
PHP简单生成缩略图相册的方法
2015/07/29 PHP
学习php设计模式 php实现状态模式
2015/12/07 PHP
php输出图像的方法实例分析
2017/02/16 PHP
PHP基于socket实现客户端和服务端通讯功能
2017/07/13 PHP
PHP通过文件路径获取文件名的实例代码
2018/10/14 PHP
基于jquery的固定表头和列头的代码
2012/05/03 Javascript
node.js中的socket.io入门实例
2014/04/26 Javascript
jQuery中$.extend()用法实例
2015/06/24 Javascript
详解JavaScript基于面向对象之继承
2015/12/13 Javascript
Vue父子组建的简单通信之控制开关Switch的实现
2018/06/04 Javascript
Vue中div contenteditable 的光标定位方法
2018/08/25 Javascript
vue微信分享到朋友圈 vue微信发送给好友
2018/11/28 Javascript
浅谈JavaScript_DOM学习篇_图片切换小案例
2019/03/19 Javascript
vue实现select下拉显示隐藏功能
2019/09/30 Javascript
解决elementUI 切换tab后 el_table 固定列下方多了一条线问题
2020/07/19 Javascript
Django中使用celery完成异步任务的示例代码
2018/01/23 Python
python 限制函数执行时间,自己实现timeout的实例
2019/01/12 Python
python读出当前时间精度到秒的代码
2019/07/05 Python
Python如何对XML 解析
2020/06/28 Python
Python openpyxl模块实现excel读写操作
2020/06/30 Python
美国球鞋寄卖网站:Stadium Goods
2018/05/09 全球购物
中文专业毕业生自荐信
2013/10/28 职场文书
西式婚礼主持词
2014/03/13 职场文书
重点工程汇报材料
2014/08/27 职场文书
党员批评与自我批评
2014/10/15 职场文书
2014年网管工作总结
2014/12/11 职场文书
工作试用期自我评价
2015/03/10 职场文书
债务纠纷代理词
2015/05/25 职场文书
班干部学习委员竞选稿
2015/11/20 职场文书
导游词之上海东方明珠塔
2019/09/25 职场文书
python 利用PyAutoGUI快速构建自动化操作脚本
2021/05/31 Python
CSS中实现动画效果-附案例
2022/02/28 HTML / CSS