python3:excel操作之读取数据并返回字典 + 写入的案例


Posted in Python onSeptember 01, 2020

excel写入数据,使用openpyxl库

class WriteExcel:
 def __init__(self,path):
  self.path = path
 
 def write_excel(self, sheet_name, content):
  """
  在excel指定sheet中的写入指定内容,以追加方式
  :return:
  """
  wb = openpyxl.load_workbook(self.path)
  ws = wb[sheet_name]
  # 获取最大行
  row_num = ws.max_row
  try:
   ws.cell(row=row_num+1, column=1).value = content
  except Exception as msg:
   print('写入excel失败:', msg)
  finally:
   wb.save(self.path) 
 
if __name__ == '__main__':
 WE = WriteExcel('../config/data.xlsx')
 WE.write_excel(sheet_name='user', content='瑟瑟发抖')

python3:excel操作之读取数据并返回字典 + 写入的案例

excel读取数据,使用xlrd库

class ReadExcel:
 def __init__(self,path):
  self.path = path
 
 def read_excel(self,row):
  """
  遍历excel所有sheet,并以字典返回
  :param row:
  :return:
  """
  with xlrd.open_workbook(self.path, 'rb') as book:
   sheets = book.sheet_names() # 找到所有sheets
   data_dict = {}
   for sheet in sheets:
    table = book.sheet_by_name(sheet) # 找到要操作的sheet
 
    # 获取sheet所有列数
    col_num = table.ncols
    # 读取第一行的值,作为每个sheet返回字典的key
    keys = table.row_values(0)
 
    # 读取除指定行,作为每个sheet返回字典的value
    values = table.row_values(row)
 
    # 遍历所有列,并以字典接收,其中第一行作为字典的key,其他行作为字典的value
    sheet_dict = {}
    for col in range(col_num):
     sheet_dict[keys[col]] = values[col]
 
   # 遍历所有sheet,并以字典接收返回,其中sheet名称作为字典的key,每个sheet的数据作为字典的value
    data_dict[sheet] = sheet_dict
  return data_dict

python3:excel操作之读取数据并返回字典 + 写入的案例

读取结果:

python3:excel操作之读取数据并返回字典 + 写入的案例

补充知识:Python+selenium+ddt数据驱动测试

我就废话不多说了,大家还是直接看代码吧~

import ddt
 
testData = ['1','2','3']
print testData
 
@ddt.ddt
class Bolg(unittest.TestCase):
  
  def setUp(self):
    print('setUp')
 
  @ddt.data(*testData)
  def test_l(self, data):
    print(data)
 
  def tearDown(self):
    print('tearDown')
 
if __name__ == "__main__":
  unittest.main()
 
============
1
2
3

以上这篇python3:excel操作之读取数据并返回字典 + 写入的案例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python编程中的for循环语句学习教程
Oct 14 Python
Python实现购物系统(示例讲解)
Sep 13 Python
Python中scatter函数参数及用法详解
Nov 08 Python
Python内置模块turtle绘图详解
Dec 09 Python
Python解决两个整数相除只得到整数部分的实例
Nov 10 Python
python 使用正则表达式按照多个空格分割字符的实例
Dec 20 Python
python利用datetime模块计算程序运行时间问题
Feb 20 Python
django实现模板中的字符串文字和自动转义
Mar 31 Python
Python3如何使用tabulate打印数据
Sep 25 Python
python爬虫调度器用法及实例代码
Nov 30 Python
如何用Python提取10000份log中的产品信息
Jan 14 Python
python turtle绘图
May 04 Python
Python+Selenium实现自动化的环境搭建的步骤(图文)
Sep 01 #Python
Django如何批量创建Model
Sep 01 #Python
python 解决selenium 中的 .clear()方法失效问题
Sep 01 #Python
一文详述 Python 中的 property 语法
Sep 01 #Python
Python Opencv轮廓常用操作代码实例解析
Sep 01 #Python
聊聊python中的异常嵌套
Sep 01 #Python
理解Django 中Call Stack机制的小Demo
Sep 01 #Python
You might like
全国FM电台频率大全 - 5 内蒙古自治区
2020/03/11 无线电
PHP通用分页类page.php[仿google分页]
2008/08/31 PHP
php中利用post传递字符串重定向的实现代码
2011/04/21 PHP
PHP基于自增数据如何生成不重复的随机数示例
2017/05/19 PHP
laravel框架实现为 Blade 模板引擎添加新文件扩展名操作示例
2020/01/25 PHP
PHP网页缓存技术优点及代码实例
2020/07/29 PHP
文字幻灯片
2006/06/26 Javascript
用javascript实现的仿Flash广告图片轮换效果
2007/04/24 Javascript
JQGrid的用法解析(列编辑,添加行,删除行)
2013/11/08 Javascript
node.js中Socket.IO的进阶使用技巧
2014/11/04 Javascript
JavaScript中document对象使用详解
2015/01/06 Javascript
IE6-IE9使用JSON、table.innerHTML所引发的问题
2015/12/22 Javascript
JS hashMap实例详解
2016/05/26 Javascript
jQuery 局部div刷新和全局刷新方法总结
2016/10/05 Javascript
详解JavaScript中数组的reduce方法
2016/12/02 Javascript
Bootstrap Table使用整理(一)
2017/06/09 Javascript
vue.js路由跳转详解
2017/08/28 Javascript
node.js 用socket实现聊天的示例代码
2017/10/17 Javascript
详解Angular5/Angular6项目如何添加热更新(HMR)功能
2018/10/10 Javascript
Node.js Domain 模块实例详解
2020/03/18 Javascript
vuex存取值和映射函数使用说明
2020/07/24 Javascript
python中for语句简单遍历数据的方法
2015/05/07 Python
Python画图学习入门教程
2016/07/01 Python
Python进程间通信之共享内存详解
2017/10/30 Python
在win10和linux上分别安装Python虚拟环境的方法步骤
2019/05/09 Python
python3中rank函数的用法
2019/11/27 Python
pytorch 实现将自己的图片数据处理成可以训练的图片类型
2020/01/08 Python
python异常处理、自定义异常、断言原理与用法分析
2020/03/23 Python
python 装饰器的基本使用
2021/01/13 Python
关于工资低的辞职信
2014/01/14 职场文书
运动会通讯稿300字
2014/02/02 职场文书
幼儿园小班教师个人工作总结
2015/02/06 职场文书
2015年“我们的节日·重阳节”活动总结
2015/07/29 职场文书
python读取mnist数据集方法案例详解
2021/09/04 Python
golang操作rocketmq的示例代码
2022/04/06 Golang
云服务器部署 Web 项目的实现步骤
2022/06/28 Servers