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中字符串的常见操作技巧总结
Jul 28 Python
Ubuntu安装Jupyter Notebook教程
Oct 18 Python
python3.6.3转化为win-exe文件发布的方法
Oct 31 Python
Python设计模式之享元模式原理与用法实例分析
Jan 11 Python
Python multiprocessing多进程原理与应用示例
Feb 28 Python
django 基于中间件实现限制ip频繁访问过程详解
Jul 30 Python
python被修饰的函数消失问题解决(基于wraps函数)
Nov 04 Python
导致python中import错误的原因是什么
Jul 01 Python
解决python 虚拟环境删除包无法加载的问题
Jul 13 Python
python基于socket模拟实现ssh远程执行命令
Dec 05 Python
Django中template for如何使用方法
Jan 31 Python
No module named ‘win32gui‘ 的解决方法(踩坑之旅)
Feb 18 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
CI框架中libraries,helpers,hooks文件夹详细说明
2014/06/10 PHP
用PHP的反射实现委托模式的讲解
2019/03/22 PHP
javascript编程起步(第七课)
2007/02/27 Javascript
关于 文本框默认值 的操作js代码
2012/01/12 Javascript
js动态给table添加/删除tr的方法
2013/08/02 Javascript
JavaScript中的apply和call函数详解
2014/07/20 Javascript
浅谈JavaScript 框架分类
2014/11/10 Javascript
Nodejs中读取中文文件编码问题、发送邮件和定时任务实例
2015/01/01 NodeJs
JavaScript 变量、作用域及内存
2015/04/08 Javascript
js实现input框文字动态变换显示效果
2015/08/19 Javascript
jquery.Callbacks的实现详解
2016/11/30 Javascript
Jquery与Bootstrap实现后台管理页面增删改查功能示例
2017/01/22 Javascript
Omi v1.0.2发布正式支持传递javascript表达式
2017/03/21 Javascript
Vuex之理解state的用法实例
2017/04/19 Javascript
react redux入门示例
2018/04/19 Javascript
详解vue-cli 3.0 build包太大导致首屏过长的解决方案
2018/11/10 Javascript
微信公众号服务器验证Token步骤图解
2019/12/30 Javascript
js布局实现单选按钮控件
2020/01/17 Javascript
详解nginx配置vue h5 history去除#号
2020/11/09 Javascript
解决python执行不输出系统命令弹框的问题
2019/06/24 Python
python判断自身是否正在运行的方法
2019/08/08 Python
pytorch下使用LSTM神经网络写诗实例
2020/01/14 Python
python与pycharm有何区别
2020/07/01 Python
HTML5自定义data-* data(obj)属性和jquery的data()方法的使用
2012/12/13 HTML / CSS
介绍java中初始化块的使用
2012/09/11 面试题
测控技术与通信工程毕业生自荐信范文
2013/12/28 职场文书
培训讲师邀请函
2014/01/10 职场文书
青年文明号复核材料
2014/02/11 职场文书
《苏珊的帽子》教学反思
2014/04/07 职场文书
大学理论知识学习自我鉴定
2014/04/28 职场文书
项目建议书模板
2014/05/12 职场文书
格列夫游记读书笔记
2015/07/01 职场文书
公司与个人合作协议书
2016/03/19 职场文书
简历中的自我评价怎么写呢?
2019/04/30 职场文书
2019终止劳动合同协议书最新范本!
2019/07/09 职场文书
Oracle11g R2 安装教程完整版
2021/06/04 Oracle