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 16 Python
理解Python中的With语句
Feb 02 Python
解析Mac OS下部署Pyhton的Django框架项目的过程
May 03 Python
python机器学习之决策树分类详解
Dec 20 Python
Pandas 同元素多列去重的实例
Jul 03 Python
Python打开文件,将list、numpy数组内容写入txt文件中的方法
Oct 26 Python
python3实现逐字输出的方法
Jan 23 Python
使用Python批量修改文件名的代码实例
Jan 24 Python
10 分钟快速入门 Python3的教程
Jan 29 Python
Django restframework 源码分析之认证详解
Feb 22 Python
python lambda表达式(匿名函数)写法解析
Sep 16 Python
小结Python的反射机制
Sep 28 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
PHP连接局域网MYSQL数据库的简单实例
2013/08/26 PHP
老版本PHP转义Json里的特殊字符的函数
2015/06/08 PHP
Laravel接收前端ajax传来的数据的实例代码
2017/07/20 PHP
jQuery EasyUI 的EasyLoader功能介绍
2010/09/12 Javascript
Javascript中arguments对象详解
2014/10/22 Javascript
jQuery选择器源码解读(二):select方法
2015/03/31 Javascript
Node.js环境下JavaScript实现单链表与双链表结构
2016/06/12 Javascript
jQuery实现手机自定义弹出输入框
2016/06/13 Javascript
javascript比较语义化版本号的实现代码
2016/09/09 Javascript
Node.js包管理器Yarn的入门介绍与安装
2016/10/17 Javascript
微信小程序 this和that详解及简单实例
2017/02/13 Javascript
浅谈ES6 模板字符串的具体使用方法
2017/11/07 Javascript
详解在vue-cli中使用graphql即vue-apollo的用法
2018/09/08 Javascript
利用layer实现表单完美验证的方法
2019/09/26 Javascript
微信小程序停止其他视频播放当前视频的实例代码
2019/12/25 Javascript
对于Python编程中一些重用与缩减的建议
2015/04/14 Python
粗略分析Python中的内存泄漏
2015/04/23 Python
python抽象基类用法实例分析
2015/06/04 Python
PyTorch上搭建简单神经网络实现回归和分类的示例
2018/04/28 Python
python类中super() 的使用解析
2019/12/19 Python
Python实现获取当前目录下文件名代码详解
2020/03/10 Python
使用Pycharm分段执行代码
2020/04/15 Python
python plt可视化——打印特殊符号和制作图例代码
2020/04/17 Python
Keras中的两种模型:Sequential和Model用法
2020/06/27 Python
HTML5的新特性(1)
2016/03/03 HTML / CSS
Java平台和其他软件平台有什么不同
2015/06/05 面试题
打架检讨书500字
2014/01/29 职场文书
创业计划实施的7大步骤
2014/02/05 职场文书
工商管理专业自荐信
2014/06/03 职场文书
农业项目建议书
2014/08/25 职场文书
预备党员思想汇报1000字
2014/10/07 职场文书
企业2014年度工作总结
2014/12/10 职场文书
给客户的检讨书
2014/12/21 职场文书
Python还能这么玩之只用30行代码从excel提取个人值班表
2021/06/05 Python
php png失真的原因及解决办法
2021/10/24 PHP
python内置模块之上下文管理contextlib
2022/06/14 Python