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实现获取客户机上指定文件并传输到服务器的方法
Mar 16 Python
浅谈Python数据类型判断及列表脚本操作
Nov 04 Python
基于python时间处理方法(详解)
Aug 14 Python
python的Crypto模块实现AES加密实例代码
Jan 22 Python
python 用lambda函数替换for循环的方法
Jun 09 Python
python json.loads兼容单引号数据的方法
Dec 19 Python
基于Python的Post请求数据爬取的方法详解
Jun 14 Python
python SQLAlchemy 中的Engine详解
Jul 04 Python
在Pytorch中使用样本权重(sample_weight)的正确方法
Aug 17 Python
python opencv根据颜色进行目标检测的方法示例
Jan 15 Python
在TensorFlow中屏蔽warning的方式
Feb 04 Python
哪种Python框架适合你?简单介绍几种主流Python框架
Aug 04 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
php函数重载的替代方法--伪重载详解
2015/05/08 PHP
PHP实现的浏览器检查类
2016/04/11 PHP
PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 标签的函数
2016/05/22 PHP
PHP编写简单的App接口
2016/08/28 PHP
php实现替换手机号中间数字为*号及隐藏IP最后几位的方法
2016/11/16 PHP
实例解析php的数据类型
2018/10/24 PHP
PHP PDOStatement::setFetchMode讲解
2019/02/03 PHP
Google排名中的10个最著名的 JavaScript库
2010/04/27 Javascript
从零开始学习jQuery (二) 万能的选择器
2010/10/01 Javascript
取消选中单选框radio的三种方式示例介绍
2013/12/23 Javascript
jquery马赛克拼接翻转效果代码分享
2015/08/24 Javascript
JavaScript操作表单实例讲解(上)
2016/06/20 Javascript
详解windows下vue-cli及webpack 构建网站(二)导入bootstrap样式
2017/06/17 Javascript
js中变量的连续赋值(实例讲解)
2017/07/08 Javascript
原生JS写Ajax的请求函数功能
2017/12/22 Javascript
zTree树形菜单交互选项卡效果的实现方法
2017/12/25 Javascript
vue 2.1.3 实时显示当前时间,每秒更新的方法
2018/09/16 Javascript
javascript事件监听与事件委托实例详解
2019/08/16 Javascript
Node.js从字符串生成文件流的实现方法
2019/08/18 Javascript
Python实现利用163邮箱远程关电脑脚本
2018/02/22 Python
Python基于SMTP协议实现发送邮件功能详解
2018/08/14 Python
程序员写Python时的5个坏习惯,你有几条?
2018/11/26 Python
Python Selenium 之数据驱动测试的实现
2019/08/01 Python
详解Django配置优化方法
2019/11/18 Python
Python实现FLV视频拼接功能
2020/01/21 Python
Django ValuesQuerySet转json方式
2020/03/16 Python
Django获取model中的字段名和字段的verbose_name方式
2020/05/19 Python
python 5个顶级异步框架推荐
2020/09/09 Python
String这个类型的class为何定义成final?
2012/11/13 面试题
市场开发与营销专业求职信
2013/12/31 职场文书
户外用品商店创业计划书
2014/01/29 职场文书
《老王》教学反思
2014/02/23 职场文书
幼儿教师培训感言
2014/03/08 职场文书
清明节文明祭祀倡议书
2015/04/28 职场文书
幼儿园托班教育随笔
2015/08/14 职场文书
2016年第十四个公民道德宣传日活动总
2016/04/01 职场文书