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 相关文章推荐
Python3基础之条件与循环控制实例解析
Aug 13 Python
TensorFlow模型保存和提取的方法
Mar 08 Python
Python3实现爬取指定百度贴吧页面并保存页面数据生成本地文档的方法
Apr 22 Python
python 检查文件mime类型的方法
Dec 08 Python
python处理DICOM并计算三维模型体积
Feb 26 Python
python爬虫爬取微博评论案例详解
Mar 27 Python
Python使用正则表达式分割字符串的实现方法
Jul 16 Python
python虚拟环境完美部署教程
Aug 06 Python
利用matplotlib实现根据实时数据动态更新图形
Dec 13 Python
解决pip install psycopg2出错问题
Jul 09 Python
详解python datetime模块
Aug 17 Python
Python制作一个随机抽奖小工具的实现
Jul 07 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学习笔记之数组篇
2011/06/28 PHP
php采用curl访问域名返回405 method not allowed提示的解决方法
2014/06/26 PHP
PHP把JPEG图片转换成Progressive JPEG的方法
2014/06/30 PHP
PHP使用正则表达式实现过滤非法字符串功能示例
2018/06/04 PHP
jQuery EasyUI API 中文文档 - Form表单
2011/10/06 Javascript
javascript与jquery中跳出循环的区别总结
2013/11/04 Javascript
JQuery中$.ajax()方法参数详解及应用
2013/12/12 Javascript
node中socket.io的事件使用详解
2014/12/15 Javascript
JavaScript获取网页表单action属性的方法
2015/04/02 Javascript
jQuery Validate让普通按钮触发表单验证的方法
2016/12/15 Javascript
vue2.0使用v-for循环制作多级嵌套菜单栏
2018/06/25 Javascript
解决vue的 v-for 循环中图片加载路径问题
2018/09/03 Javascript
详解js删除数组中的指定元素
2018/10/31 Javascript
javascript异步编程的六种方式总结
2019/05/17 Javascript
javascript实现异形滚动轮播
2019/11/28 Javascript
Js视频播放器插件Video.js使用方法详解
2020/02/04 Javascript
NodeJS多种创建WebSocket监听的方式(三种)
2020/06/04 NodeJs
Python函数可变参数定义及其参数传递方式实例详解
2015/05/25 Python
详解Python中的Numpy、SciPy、MatPlotLib安装与配置
2017/11/17 Python
python pandas中DataFrame类型数据操作函数的方法
2018/04/08 Python
python 读取竖线分隔符的文本方法
2018/12/20 Python
PYTHON EVAL的用法及注意事项解析
2019/09/06 Python
Python timeit模块的使用实践
2020/01/13 Python
python如何判断IP地址合法性
2020/04/05 Python
如何使用 Python 读取文件和照片的创建日期
2020/09/05 Python
基于Python爬取搜狐证券股票过程解析
2020/11/18 Python
工程管理专业毕业生自荐信
2014/01/24 职场文书
企业内控岗位的职责
2014/02/07 职场文书
2015年元旦主持词结束语
2014/12/14 职场文书
农业项目合作意向书
2015/05/08 职场文书
《折线统计图》教学反思
2016/02/22 职场文书
区域销售大会开幕词
2016/03/04 职场文书
甜美蛋糕店的创业计划书模板,拿来即用!
2019/08/21 职场文书
C#连接ORACLE出现乱码问题的解决方法
2021/10/05 Oracle
如何避免mysql启动时错误及sock文件作用分析
2022/01/22 MySQL
Shell脚本一键安装Nginx服务自定义Nginx版本
2022/03/20 Servers