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 相关文章推荐
让Django支持Sql Server作后端数据库的方法
May 29 Python
Python基于百度云文字识别API
Dec 13 Python
对Python的多进程锁的使用方法详解
Feb 18 Python
Flask配置Cors跨域的实现
Jul 12 Python
Python简易版图书管理系统
Aug 12 Python
python基础教程之while循环
Aug 14 Python
Python Subprocess模块原理及实例
Aug 26 Python
PyCharm2019安装教程及其使用(图文教程)
Sep 29 Python
python脚本后台执行方式
Dec 21 Python
python实现加密的方式总结
Jan 19 Python
Python range与enumerate函数区别解析
Feb 28 Python
利用python查看数组中的所有元素是否相同
Jan 08 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开发中常用的字符串操作函数
2011/02/08 PHP
将FCKeditor导入PHP+SMARTY的实现方法
2015/01/15 PHP
php删除txt文件指定行及按行读取txt文档数据的方法
2017/01/30 PHP
js文件中调用js的实现方法小结
2009/10/23 Javascript
说说JSON和JSONP 也许你会豁然开朗
2012/09/02 Javascript
js的onload事件及初始化按钮事件示例代码
2013/09/25 Javascript
jQuery客户端分页实例代码
2013/11/18 Javascript
javascript实现图像循环明暗变化的方法
2015/02/25 Javascript
JavaScript中操作字符串小结
2015/05/04 Javascript
浅谈toLowerCase和toLocaleLowerCase的区别
2016/08/15 Javascript
js中利用cookie实现记住密码功能
2020/08/20 Javascript
学习vue.js计算属性
2016/12/03 Javascript
JS使用正则实现去掉字符串左右空格的方法
2016/12/27 Javascript
Vue.js 通过jQuery ajax获取数据实现更新后重新渲染页面的方法
2018/08/09 jQuery
React SSR样式及SEO的实践
2018/10/22 Javascript
使用 Angular RouteReuseStrategy 缓存(路由)组件的实例代码
2019/11/01 Javascript
[15:35]教你分分钟做大人:天怒法师
2014/10/30 DOTA
[07:43]《辉夜杯》公开赛晋级外卡赛战队—TRG训练生活探秘
2015/12/11 DOTA
[04:44]DOTA2 2017全国高校联赛视频回顾
2017/08/21 DOTA
python3新特性函数注释Function Annotations用法分析
2016/07/28 Python
python中如何使用朴素贝叶斯算法
2017/04/06 Python
Python 用turtle实现用正方形画圆的例子
2019/11/21 Python
python3 pathlib库Path类方法总结
2019/12/26 Python
python 计算概率密度、累计分布、逆函数的例子
2020/02/25 Python
Python IDE环境之 新版Pycharm安装详细教程
2020/03/05 Python
python -v 报错问题的解决方法
2020/09/15 Python
模具设计与制造专业应届生求职信
2013/10/18 职场文书
员工廉洁自律承诺书
2014/05/26 职场文书
大专生找工作自荐书
2014/06/10 职场文书
激励口号大全
2014/06/17 职场文书
食品科学与工程专业毕业生求职信范文
2014/07/21 职场文书
公司离职证明样本
2014/09/13 职场文书
大学生个人年度总结范文
2015/02/15 职场文书
2015年加油站工作总结
2015/05/13 职场文书
校运会班级霸气口号
2015/12/24 职场文书
企业管理制度设计时要注意的几种“常见病”!
2019/04/19 职场文书