Python Json数据文件操作原理解析


Posted in Python onMay 09, 2020

引言

接口测试就是数据的测试,在测试之前,需要准备好测试数据,而测试数据可以用数据库、excel、txt和csv方式,当然还有一种方式,那就是使用json文件来储存测试数据。常用的方式就是这些。

设计思路

python读取json文件和读取txt方式是一样的,获取路径,判断路径是否存在,获取文件名及绝对路径,打开读取数据,提取关键数据,关闭文件。具体流程,画了一个草图方便理解:

Python Json数据文件操作原理解析

具体代码实现

@author: Leo
 
@software: pycharm
 
@file: operate_json.py
 
@time: 2020/5/3 0003 9:01
 
@Desc:
 
'''
__author__ = 'Leo'
 
import os
import json
 
# 获取当前文件所在的绝对路径
curPath = os.path.abspath(os.path.dirname(__file__))
print(curPath)
rootPath = os.path.abspath(os.path.dirname(curPath))
print(rootPath)
 
config_file_name = r'./data/api_json'
 
 
 
class OperateJson(object):
  """
  操作Json文件
  """
  def __init__(self,file_name = None):
    if file_name:
      self.file_name = file_name
    else:
      self.get_file = config_file_name
      self.file_name = os.path.join(rootPath,self.get_file)
      print("文件名称:%s"%self.file_name)
 
    self.data = self.read_json()
 
 
  def read_json(self):
    """
    读取json数据
    """
    with open(self.file_name,encoding='utf8') as fp:
      # 反序列化,从文件读取(string转dict)
      data = json.load(fp)
      fp.close()
    return data
 
  def get_keyword_data(self,key):
    """
    读取关键字
    """
    return self.data[key]
if __name__ == '__main__':
  # oj = OperateJson("../data/package.json")
  oj = OperateJson()
  print(oj.read_json())
  print(oj.get_keyword_data('api1'))
  print(oj.get_keyword_data('api1')['url'])
  print(oj.get_keyword_data('api1')['data'])

运行结果:

Python Json数据文件操作原理解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用python搭建Django应用程序步骤及版本冲突问题解决
Nov 19 Python
python发送HTTP请求的方法小结
Jul 08 Python
深入理解python中的atexit模块
Mar 07 Python
关于Python如何避免循环导入问题详解
Sep 14 Python
python+django加载静态网页模板解析
Dec 12 Python
Python使用爬虫爬取静态网页图片的方法详解
Jun 05 Python
python 实现UTC时间加减的方法
Dec 31 Python
python pytest进阶之xunit fixture详解
Jun 27 Python
python3.8与pyinstaller冲突问题的快速解决方法
Jan 16 Python
TensorFlow保存TensorBoard图像操作
Jun 23 Python
Python操作Elasticsearch处理timeout超时
Jul 17 Python
python3:excel操作之读取数据并返回字典 + 写入的案例
Sep 01 Python
利用Python如何实时检测自身内存占用
May 09 #Python
如何通过Python3和ssl实现加密通信功能
May 09 #Python
详解Django配置JWT认证方式
May 09 #Python
Nginx+Uwsgi+Django 项目部署到服务器的思路详解
May 08 #Python
win10从零安装配置pytorch全过程图文详解
May 08 #Python
Python reduce函数作用及实例解析
May 08 #Python
Python使用sqlite3模块内置数据库
May 07 #Python
You might like
全国FM电台频率大全 - 29 青海省
2020/03/11 无线电
使用淘宝IP库获取用户ip地理位置
2013/10/27 PHP
php合并js请求的例子
2013/11/01 PHP
php判断输入是否是纯数字,英文,汉字的方法
2015/03/05 PHP
ThinkPHP 模板引擎使用详解
2017/05/07 PHP
如何利用预加载优化Laravel Model查询详解
2017/08/11 PHP
jquery checkbox,radio是否选中的判断代码
2010/03/20 Javascript
jQuery使用height()获取高度需要注意的地方
2014/12/13 Javascript
浅谈javascript中自定义模版
2015/01/29 Javascript
JavaScript检测实例属性, 原型属性
2015/02/04 Javascript
全面解析Bootstrap表单使用方法(表单控件)
2015/11/24 Javascript
layui实现点击按钮给table添加一行
2018/08/10 Javascript
vue2过滤器模糊查询方法
2018/09/16 Javascript
iview form清除校验状态的实现
2019/09/19 Javascript
[01:10:48]完美世界DOTA2联赛PWL S2 GXR vs PXG 第一场 11.18
2020/11/18 DOTA
Flask框架的学习指南之用户登录管理
2016/11/20 Python
Django处理多用户类型的方法介绍
2019/05/18 Python
Python处理时间日期坐标轴过程详解
2019/06/25 Python
利用python实现周期财务统计可视化
2019/08/25 Python
用python拟合等角螺线的实现示例
2019/12/27 Python
对tensorflow中的strides参数使用详解
2020/01/04 Python
HTML5 离线应用之打造零请求、无流量网站的解决方法
2013/04/25 HTML / CSS
HTML5 canvas基本绘图之文字渲染
2016/06/27 HTML / CSS
日本7net购物网:书籍、漫画、杂志、DVD、游戏邮购
2017/02/17 全球购物
美国知名的旅游网站:OneTravel
2018/10/09 全球购物
汽车运用工程毕业生自荐信
2013/10/29 职场文书
研发工程师的岗位职责
2013/11/18 职场文书
小学校长汇报材料
2014/08/20 职场文书
群众路线对照检查材料思想汇报怎么写
2014/09/18 职场文书
介绍信的格式
2015/01/30 职场文书
单位政审意见范文
2015/06/04 职场文书
初中物理教学反思
2016/02/19 职场文书
评估“风险”创业计划的几大要点
2019/08/12 职场文书
Python爬虫爬取全球疫情数据并存储到mysql数据库的步骤
2021/03/29 Python
Python制作一个随机抽奖小工具的实现
2021/07/07 Python
Java对文件的读写操作方法
2022/04/29 Java/Android