002、Python中json字符串与字典转换
1、测试用例文件TestCase.xlsx
2、编写Python文件进行读取
#!/usr/bin/env python
# -*- coding:utf-8 -*- import time
import xlrd class ReadExcel:
def __init__(self,excel_file):
self.excel_file = excel_file
self.case_id = 0 #用例ID
self.http_method = '' #接口http方法
self.request_name = '' #接口ming
self.request_url = '' #接口请求url
self.request_param = ''#请求参数
self.test_method = '' #测试方法
self.test_desc = '' #测试(用力)描述
self.result = '' #测试结果
self.reason = '' #失败原因 def read_excel(self):
excel_data = []
data = xlrd.open_workbook(self.excel_file)
table = data.sheet_by_index(0) #通过索引顺序获取
for i in range(1,table.nrows):
excel_data.clear()
if table.cell(i,7).value.replace('\n','').replace('\r','') != 'Yes':
continue
row_data = table.row_values(i)
self.case_id = str(int(table.cell(i, 0).value)).replace('\n','').replace('\r','')
self.test_desc = table.cell(i, 1).value.replace('\n','').replace('\r','')
#api_host = table.cell(i, 2).value.replace('\n','').replace('\r','')
self.request_url = table.cell(i, 3).value.replace('\n','').replace('\r','')
self.test_method = table.cell(i, 4).value.replace('\n','').replace('\r','')
self.request_param = table.cell(i, 5).value.replace('\n','').replace('\r','')
self.result = table.cell(i, 6).value
excel_data.append((self.case_id,self.test_desc,self.request_url,self.test_method,self.request_param,self.result))
yield excel_data
3、通过json.loads(str)将字符串转换成字典
import json
dict1 = json.loads(str)
读取的过程中一致出现问题:
解决方案如下:
有一个需求,需要用python把json字符串转化为字典
inp_str
=
" {'k1':123, 'k2': '345',’k3’,’ares’} "
import json
inp_str
=
" {'k1':123, 'k2': '345',’k3’,’ares’} "
print json.loads(a)
死活出不来结果,还报错,没搞明白。
最后,直接复制网上的代码,OK,运行成功,可是把我的inp_srt变量填进去,不行,报错;开始对比两个变量有什么不同,一直以为Python中双引号单引号可以随便用,意思不变;最后百度了知道json的标准格式:要求必须 只能使用双引号作为键 或者 值的边界符号,不能使用单引号,而且“键”必须使用边界符(双引号)
改了后OK了。
#-*-coding:utf-8-*-
import json
inp_strr = '{"k1":123, "k2": "456", 'k3':"ares"}'
inp_dict = json.loads(inp_strr) # 根据字符串书写格式,将字符串自动转换成 字典类型
print inp_dict
今后如何避免:所有的json串均采用双引号。
002、Python中json字符串与字典转换的更多相关文章
- python中json与dict之间转换
Python之dict(或对象)与json之间的互相转化 在Python语言中,json数据与dict字典以及对象之间的转化,是必不可少的操作. 在Python中自带json库.通过import js ...
- Python 中 JSON和dict的转换,json的使用
一. 基础语法 在Python 的 json库中,共有四个方法.分别是: json.load() # 从文件中加载 json.loads() # 数据中加载 json.dump() # 转存到文件 j ...
- python中 将字符串和字典的相互转换
1.首先引入json模块 # 引入json模块 import json 2.转换 #JSON到字典转化: dictinfo = json.loads(json_str) # 输出dict类型 字典到J ...
- python中的字符串 列表 字典
字符串 一个有序的字符集合 不可变 1,可以使用for in语句进行迭代循环,返回元素 2,in类是于str.find()方法但是是返回布尔结果 str.find()返回 ...
- Python处理json字符串转化为字典
有一个需求,需要用python把json字符串转化为字典 inp_str = " {'k1':123, 'k2': '345','k3','ares'} " import json ...
- js中Json字符串如何转成Json对象(4种转换方式)
js中Json字符串如何转成Json对象(4种转换方式) 一.总结 一句话总结:原生方法(就是浏览器默认支持的方法) 浏览器支持的转换方式(Firefox,chrome,opera,safari,ie ...
- Python中json的简单读写操作
Python中json的简单读写操作 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的 ...
- python中用json存储列表字典等文件操作
JSON字符串用json.dumps, json.loads JSON文件名用json.dump, json.load 由于需要在脚本重启后依旧能够记住之前所使用的列表内容, 故采用json存储列表文 ...
- python中json模块的使用
Python自带json模块,它有loads.dumps.load和dump这4个功能,用于Json格式字符串和Python数据类型间进行转换. 一.json.loads() 把Json格式字符串解码 ...
随机推荐
- 【UML】基本介绍与类图(依赖、泛化、实现、关联、聚合、组合关系)
文章目录 UML基本介绍 UML图 UML类图 类图-依赖关系(Dependence) 类图-泛化关系(generalization) 类图-实现关系(Implementation) 类图-关联关系( ...
- 【RAC】安装rac的时候。报错checking for oracle home incompatibilities failed
背景:由于oracle安装的时候中途出现了问题,解决过后,发现报错了 图形化安装的时候,有这个问题出现 解决办法: 删除安装过的所有缓存,和文件即可 1.删除ORACLE_BASE下的所有文件 2.删 ...
- win10打开IIS服务并发布网站
1.打开控制面板 win+x后点击控制面板 2.点击程序集下边的解除安装程式 3.点击开启或关闭windows功能 4.找到Internet information services并勾选前面的复选框 ...
- MYSQL基础知识的复习1
数据库(是存放数据的仓库) 1.根据存储量以及安全性上来划分: 大型数据库:DB2 Oracle(毕业) Hbase 银行 公安局(不加班 没网) 移动 中型数据库:mysql sqlserver(. ...
- 避免重复提交?分布式服务的幂等性设计! 架构文摘 今天 点击蓝色“架构文摘”关注我哟 加个“星标”,每天上午 09:25,干货推送! 来源:https://www.cnblogs.com/QG-whz/p/10372458.html 作者:melonstreet
避免重复提交?分布式服务的幂等性设计! 架构文摘 今天 点击蓝色"架构文摘"关注我哟 加个"星标",每天上午 09:25,干货推送! 来源:h ...
- SQL操作数据——SQL组成,查询基础语法,where,Oracle常用函数等
SQL组成 DML数据操作语言 DCL数据控制语言 DQL数据查询语言 DDL数据定义语言 查询基础语法 记录筛选 where 子句 记录筛选 where 子句 实例练习 实例练习 Select语句中 ...
- hbase 集群(完全分布式)方式安装
一,环境 1, 主节点一台: ubuntu desktop 16.04 zhoujun 172.16.12.1 从节点(slave)两台:ubuntu server 16.04 hadoo ...
- OpenStack (nova 计算服务)
nova介绍 Nova 负责维护和管理云环境的计算资源,Nova这个模块很重要,可以说是 OpenStack 的最核心的服务模块之一,以至于在 OpenStack 的初期版本里大部分的云系统管理功能都 ...
- 7. Linux命令行的通配符、转义字符
1.命令行的通配符 举例:1)列出所有在/dev 目录中以sda 开头的文件 [root@Centos test]# ll /dev/sda* brw-rw----. 1 root disk 8, 0 ...
- Spring 事务、异步和循环依赖有什么关系?
前言 在循环依赖中有一种循环依赖,就是自注入:自己依赖自己. 事务的自注入 在 Spring 自调用事务失效,你是怎么解决的? 有小伙伴提出可以自己注入自己来解决事务失效. 具体使用方式如下: @Sl ...