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的装饰器的运用
May 05 Python
学习python类方法与对象方法
Mar 15 Python
PyCharm在win10的64位系统安装实例
Nov 26 Python
Python实现读取字符串按列分配后按行输出示例
Apr 17 Python
python实现类之间的方法互相调用
Apr 29 Python
Python实现的查询mysql数据库并通过邮件发送信息功能
May 17 Python
Flask入门之上传文件到服务器的方法示例
Jul 18 Python
Python可变和不可变、类的私有属性实例分析
May 31 Python
python实现生成Word、docx文件的方法分析
Aug 30 Python
在Python中画图(基于Jupyter notebook的魔法函数)
Oct 28 Python
python3用urllib抓取贴吧邮箱和QQ实例
Mar 10 Python
分享3个非常实用的 Python 模块
Mar 03 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
php heredoc和phpwind的模板技术使用方法小结
2008/03/28 PHP
php计划任务之ignore_user_abort函数实现方法
2015/01/08 PHP
PHP实现基于栈的后缀表达式求值功能
2017/11/10 PHP
php生成随机数/生成随机字符串的方法小结【5种方法】
2020/05/27 PHP
JavaScript入门教程(5) js Screen屏幕对象
2009/01/31 Javascript
jQuery获取Select选择的Text和Value(详细汇总)
2013/01/25 Javascript
JQuery中对Select的option项的添加、删除、取值
2013/08/25 Javascript
浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
2014/11/12 Javascript
Js 正则表达式知识汇总
2014/12/02 Javascript
jQuery Validate验证框架经典大全
2015/09/23 Javascript
JS组件Bootstrap Table使用方法详解
2016/02/02 Javascript
DeviceOne 让你一见钟情的App快速开发平台
2016/02/17 Javascript
JavaScript蒙板(model)功能的简单实现代码
2016/08/04 Javascript
jQuery树形插件jquery.simpleTree.js用法分析
2016/09/05 Javascript
javascript中的后退和刷新实现方法
2016/11/10 Javascript
Angularjs之filter过滤器(推荐)
2016/11/27 Javascript
AngulaJS路由 ui-router 传参实例
2017/04/28 Javascript
用 Vue.js 递归组件实现可折叠的树形菜单(demo)
2017/12/25 Javascript
详解微信UnionID作用
2019/05/15 Javascript
微信小程序开发数据缓存基础知识辨析及运用实例详解
2020/11/06 Javascript
Python转码问题的解决方法
2008/10/07 Python
跟老齐学Python之画圈还不简单吗?
2014/09/20 Python
Python中optparse模块使用浅析
2015/01/01 Python
python使用pil生成缩略图的方法
2015/03/26 Python
Django项目中包含多个应用时对url的配置方法
2018/05/30 Python
Python数据分析matplotlib设置多个子图的间距方法
2018/08/03 Python
对python中数据集划分函数StratifiedShuffleSplit的使用详解
2018/12/11 Python
详解python中递归函数
2019/04/16 Python
通过Turtle库在Python中绘制一个鼠年福鼠
2020/02/03 Python
Python中断多重循环的几种方式详解
2020/02/10 Python
台湾三立电视电商平台:电电购
2019/09/09 全球购物
日本亚马逊官方网站:Amazon.co.jp
2020/04/14 全球购物
经贸专业毕业生求职信
2014/03/23 职场文书
保护环境倡议书范文
2014/05/13 职场文书
2015年元旦文艺晚会总结(学院)
2014/11/28 职场文书
2016年庆祝六一儿童节活动总结
2016/04/06 职场文书