Python实现读取并写入Excel文件过程解析


Posted in Python onMay 27, 2020

需求是有两个Excel文件:1.xlsx,2.xlsx,比较2.xlsx中的A,B列和1.xlsx中的A,B列;查找1.xlsx中存在,2.xlsx中不存在的行数据,输出到result.xlsx文件中

1.xlsx内容如下

Python实现读取并写入Excel文件过程解析

2.xlsx内容如下

Python实现读取并写入Excel文件过程解析

上代码

# coding=utf-8

import xlrd
import xlwt

# 打开文件
#data = xlrd.open_workbook('./附件7:溶洞钻孔、埋管、注浆.xlsx')

# 查看工作表
#data.sheet_names()
#print("sheets:" + str(data.sheet_names()))

# 通过文件名获得工作表,获取工作表1
#table = data.sheet_by_name('20200404')

# 打印data.sheet_names()可发现,返回的值为一个列表,通过对列表索引操作获得工作表1
# table = data.sheet_by_index(0)

# 获取行数和列数
# 行数:table.nrows
# 列数:table.ncols
#print("总行数:" + str(table.nrows))
#print("总列数:" + str(table.ncols))

# 获取整行的值 和整列的值,返回的结果为数组
# 整行值:table.row_values(start,end)
# 整列值:table.col_values(start,end)
# 参数 start 为从第几个开始打印,
# end为打印到那个位置结束,默认为none
#print("整行值:" + str(table.row_values(0)))
#print("整列值:" + str(table.col_values(1)))

# 获取某个单元格的值,例如获取B3单元格值
#cel_B3 = table.cell(3,2).value
#print("第三行第二列的值:" + cel_B3)

def read_xlrd(excelFile,tablename):
  data = xlrd.open_workbook(excelFile)
  #table = data.sheet_by_index(0)
  table = data.sheet_by_name(tablename)
  print("总行数:" + str(table.nrows))
  print("总列数:" + str(table.ncols))
  dataFile = []

  for rowNum in range(table.nrows):
    # if 去掉表头
    if rowNum > 0:
      dataFile.append(table.row_values(rowNum))

  return dataFile
  

workbook = xlwt.Workbook(encoding = 'ascii')
worksheet = workbook.add_sheet('sheet1')

def writeLine(row ,line):
  col=0
  while col <len(line):
    worksheet.write(row,col, line[col])
    col+=1

filename1='./附件7:溶洞钻孔、埋管、注浆.xlsx' 
data1=read_xlrd(filename1,'20200404')
filename2='./设计之都溶洞注浆台账.xlsx' 
data2=read_xlrd(filename2,'Sheet1')
data=[]
for row in data1[4:]:
  #print(row[0],row[1])
  data.append([row[0],row[1]])
#print(data)
result=[]
i=0
for row in data2[1:]:
  
  buf=[row[1],row[2]]
  if buf not in data:
    print(row,'不存在')
    writeLine(i, row)
    i+=1
workbook.save('result.xlsx')

之后生成结果result.xlsx文件

Python实现读取并写入Excel文件过程解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用rsa加密算法模块模拟新浪微博登录
Jan 22 Python
详解Python中内置的NotImplemented类型的用法
Mar 31 Python
Python实现两款计算器功能示例
Dec 19 Python
单利模式及python实现方式详解
Mar 20 Python
Python面向对象类的继承实例详解
Jun 27 Python
Python多进程原理与用法分析
Aug 21 Python
java判断三位数的实例讲解
Jun 10 Python
pytorch之Resize()函数具体使用详解
Feb 27 Python
Pyspark读取parquet数据过程解析
Mar 27 Python
Python3 hashlib密码散列算法原理详解
Mar 30 Python
python 如何快速复制序列
Sep 07 Python
利用Python实现Picgo图床工具
Nov 23 Python
Python正则表达式如何匹配中文
May 27 #Python
使用python创建Excel工作簿及工作表过程图解
May 27 #Python
Python实现疫情通定时自动填写功能(附代码)
May 27 #Python
Python unittest单元测试openpyxl实现过程解析
May 27 #Python
python实现爱奇艺登陆密码RSA加密的方法示例详解
May 27 #Python
python如何求100以内的素数
May 27 #Python
pytorch查看通道数 维数 尺寸大小方式
May 26 #Python
You might like
phpmyadmin中禁止外网使用的方法
2014/11/04 PHP
php格式文件打开的四种方法
2018/02/24 PHP
实例解析php的数据类型
2018/10/24 PHP
PJ Blog修改-禁止复制的代码和方法
2006/10/25 Javascript
基于jquery的高性能td和input切换并可修改内容实现代码
2011/01/09 Javascript
让textarea自动调整大小的js代码
2011/04/12 Javascript
JS+DIV实现鼠标划过切换层效果的实例代码
2013/11/26 Javascript
BAT及各大互联网公司2014前端笔试面试题--JavaScript篇
2014/10/29 Javascript
Javascript简单改变表单元素背景的方法
2015/07/15 Javascript
Node.js配合node-http-proxy解决本地开发ajax跨域问题
2016/08/31 Javascript
jQuery的Cookie封装,与PHP交互的简单实现
2016/10/05 Javascript
利用策略模式与装饰模式扩展JavaScript表单验证功能
2017/02/14 Javascript
小程序实现按下录音松开识别语音
2019/11/22 Javascript
node静态服务器实现静态读取文件或文件夹
2019/12/03 Javascript
在Vue里如何把网页的数据导出到Excel的方法
2020/09/30 Javascript
[02:20]DOTA2亚洲邀请赛 EHOME战队出场宣传片
2015/02/07 DOTA
[00:29]2019完美世界全国高校联赛(秋季赛)总决赛海口落幕
2019/12/10 DOTA
python3实现短网址和数字相互转换的方法
2015/04/28 Python
Python中的getopt函数使用详解
2015/07/28 Python
Windows下python2.7.8安装图文教程
2016/05/26 Python
浅谈Scrapy网络爬虫框架的工作原理和数据采集
2019/02/07 Python
python代码实现将列表中重复元素之间的内容全部滤除
2020/05/22 Python
Python执行时间的几种计算方法
2020/07/31 Python
python中numpy数组与list相互转换实例方法
2021/01/29 Python
CSS3 text-shadow实现文字阴影效果
2016/02/24 HTML / CSS
CSS3实现多样的边框效果
2018/05/04 HTML / CSS
Html5 webview元素定位工具的实现
2020/08/07 HTML / CSS
银河香水:Galaxy Perfume
2019/03/25 全球购物
西安当代医院管理研究院笔试题
2015/12/11 面试题
幼儿园家长会欢迎词
2014/01/09 职场文书
物理学专业自荐信
2014/06/11 职场文书
狮子林导游词
2015/02/03 职场文书
幼儿园五一劳动节活动总结
2015/02/09 职场文书
财务人员个人工作总结
2015/02/27 职场文书
从贫穷到富有,是知识技能和学习力的差别
2019/08/20 职场文书
彻底弄懂Python中的回调函数(callback)
2022/06/25 Python