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 流程控制实例代码
Sep 25 Python
一个检测OpenSSL心脏出血漏洞的Python脚本分享
Apr 10 Python
Python中获取对象信息的方法
Apr 27 Python
Linux上安装Python的PIL和Pillow库处理图片的实例教程
Jun 23 Python
用Python设计一个经典小游戏
May 15 Python
在Pycharm中对代码进行注释和缩进的方法详解
Jan 20 Python
Python函数的默认参数设计示例详解
Dec 01 Python
PyCharm使用之配置SSH Interpreter的方法步骤
Dec 26 Python
Python&amp;&amp;GDAL实现NDVI的计算方式
Jan 09 Python
Pytorch中的自动求梯度机制和Variable类实例
Feb 29 Python
Python使用20行代码实现微信聊天机器人
Jun 05 Python
pycharm永久激活超详细教程
Oct 29 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
Codeigniter出现错误提示Error with CACHE directory的解决方案
2014/06/12 PHP
10款实用的PHP开源工具
2015/10/23 PHP
thinkPHP的表达式查询用法详解
2016/09/14 PHP
PHP生成图片验证码功能示例
2017/01/12 PHP
php7基于递归实现删除空文件夹的方法示例
2017/06/15 PHP
php用xpath解析html的代码实例讲解
2019/02/14 PHP
laravel 获取某个查询的查询SQL语句方法
2019/10/12 PHP
php实现商城购物车的思路和源码分析
2020/07/23 PHP
如何通过Apache在本地配置多个虚拟主机
2020/07/29 PHP
js 调整select 位置的函数
2008/02/21 Javascript
js简单倒计时实现代码
2016/04/30 Javascript
bootstrap实现每隔5秒自动轮播效果
2016/12/20 Javascript
JS实现中国公民身份证号码有效性验证
2017/02/20 Javascript
vue项目打包后打开页面空白解决办法
2018/06/29 Javascript
bootstrap table列和表头对不齐的解决方法
2019/07/19 Javascript
JavaScript展开操作符(Spread operator)详解
2019/07/20 Javascript
python实现闹钟定时播放音乐功能
2018/01/25 Python
Python实战之制作天气查询软件
2019/05/14 Python
使用python socket分发大文件的实现方法
2019/07/08 Python
讲解Python3中NumPy数组寻找特定元素下标的两种方法
2019/08/04 Python
python OpenCV GrabCut使用实例解析
2019/11/11 Python
python微信公众号开发简单流程实现
2020/03/09 Python
HTML中fieldset标签概述及使用方法
2013/02/01 HTML / CSS
印尼综合在线预订网站:Tiket.com(机票、酒店、火车、租车和娱乐)
2018/10/11 全球购物
Java中各种基本数据类型的默认值都是什么
2016/12/22 面试题
应聘护士自荐信
2013/10/21 职场文书
应届生英语教师求职信
2013/11/05 职场文书
企业总经理岗位职责
2014/02/13 职场文书
党的群众路线教育实践活动心得体会900字
2014/03/07 职场文书
2014县委书记四风对照检查材料思想汇报
2014/09/21 职场文书
医院护士党的群众路线教育实践活动对照检查材料思想汇报
2014/10/04 职场文书
质量保证书怎么写
2015/02/27 职场文书
奖励通知
2015/04/22 职场文书
爸爸的三轮车观后感
2015/06/16 职场文书
python实战之90行代码写个猜数字游戏
2021/04/22 Python
CSS中实现动画效果-附案例
2022/02/28 HTML / CSS