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删除特定文件的方法
Jul 30 Python
Python使用PDFMiner解析PDF代码实例
Mar 27 Python
python+mongodb数据抓取详细介绍
Oct 25 Python
Python内置函数——__import__ 的使用方法
Nov 24 Python
Python时间戳使用和相互转换详解
Dec 11 Python
python 中的list和array的不同之处及转换问题
Mar 13 Python
python matplotlib 在指定的两个点之间连线方法
May 25 Python
python程序变成软件的实操方法
Jun 24 Python
numpy.transpose()实现数组的转置例子
Dec 02 Python
python对指定字符串逆序的6种方法(小结)
Apr 02 Python
matplotlib教程——强大的python作图工具库
Oct 15 Python
Pycharm在指定目录下生成文件和删除文件的实现
Dec 28 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
Window下PHP三种运行方式图文详解
2013/06/11 PHP
php使用cookie保存用户登录的用户名实例
2015/01/26 PHP
php抓取并保存网站图片的实现代码
2015/10/28 PHP
ThinkPHP模板Volist标签嵌套循环输出多维数组的方法
2016/03/23 PHP
Yii2创建控制器(createController)方法详解
2016/07/23 PHP
关于laravel 日志写入失败问题汇总
2019/10/17 PHP
ExtJS下grid的一些属性说明
2009/12/13 Javascript
js注意img图片的onerror事件的分析
2011/01/01 Javascript
关于jQuery的inArray 方法介绍
2011/10/08 Javascript
Jquery easyui 下loaing效果示例代码
2013/08/12 Javascript
JavaScript中的document.referrer在各种浏览器测试结果
2014/07/18 Javascript
JS使用for循环遍历Table的所有单元格内容
2014/08/21 Javascript
javascript插件开发的一些感想和心得
2016/02/28 Javascript
JS制作类似选项卡切换的年历
2016/12/03 Javascript
使用原生js写ajax实例(推荐)
2017/05/31 Javascript
使用jQuery实现动态添加小广告
2017/07/11 jQuery
javascript头像上传代码实例
2019/09/28 Javascript
jQuery实现高度灵活的表单验证功能示例【无UI】
2020/04/30 jQuery
基于JS实现操作成功之后自动跳转页面
2020/09/25 Javascript
JS实现公告上线滚动效果
2021/01/10 Javascript
Python的gevent框架的入门教程
2015/04/29 Python
mac安装pytorch及系统的numpy更新方法
2018/07/26 Python
selenium3+python3环境搭建教程图解
2018/12/07 Python
Django 全局的static和templates的使用详解
2019/07/19 Python
CSS类名支持中文命名的示例
2014/04/04 HTML / CSS
实列教程 一款基于jquery和css3的响应式二级导航菜单
2014/11/13 HTML / CSS
CSS3动画效果回调处理详解
2014/12/10 HTML / CSS
详解CSS 3 中的 calc() 方法
2018/01/12 HTML / CSS
一款html5 canvas实现的图片玻璃碎片特效
2014/09/11 HTML / CSS
如何设置Java的运行环境
2013/04/05 面试题
财务部总监岗位职责
2014/03/12 职场文书
《大江保卫战》教学反思
2014/04/11 职场文书
好的旅游活动方案
2014/08/19 职场文书
家长会主持词开场白
2015/05/29 职场文书
2016大学生暑期社会实践心得体会
2016/01/14 职场文书
详解Spring事件发布与监听机制
2021/06/30 Java/Android