python将字符串转变成dict格式的实现

yipeiwu_com5年前Python基础

字符串的内容是字典,需将字符串转变成字典格式

s1 = '{"lid":2,"date":"20190211","type":"1,2","page":1}' # dict的key和value用双引号
s2 = "{'lid':2,'date':'20190211','type':'1,2','page':1}" # 单引号

print(type(s1),type(s2)) # <class 'str'> <class 'str'>

第一种方式 json.loads() 必须用双引号,否则会报错

import json
s11 = json.loads(s1)
print(s11,type(s11)) # <class 'dict'>

s22 = json.loads(s2) #报错jExpecting property name enclosed in double quotes 必须双引号
print(s22,type(s22))

第二种方式 eval() -- 不安全。 用ast.literal_eval()替换

s33 = eval(s1)
print(s33,type(s33))

s44 = eval(s2)
print(s44,type(s44))

import ast
s55 = ast.literal_eval(s1)
s66 = ast.literal_eval(s2)
print(s55,s66,type(s55),type(s66))

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

理解生产者消费者模型及在Python编程中的运用实例

理解生产者消费者模型及在Python编程中的运用实例

什么是生产者消费者模型 在 工作中,大家可能会碰到这样一种情况:某个模块负责产生数据,这些数据由另一个模块来负责处理(此处的模块是广义的,可以是类、函数、线程、进程等)。产 生数据的模块...

python实现指定ip端口扫描方式

在Linux中判断一台主机是否可达,可以使用ping命令,而判断端口是否打开,可以使用telnet命令,但是telnet命令没有超时时间的参数,使用起来不是很方便,那么可以利用Pytho...

使用Tensorflow将自己的数据分割成batch训练实例

使用Tensorflow将自己的数据分割成batch训练实例

学习神经网络的时候,网上的数据集已经分割成了batch,训练的时候直接使用batch.next()就可以获取batch,但是有的时候需要使用自己的数据集,然而自己的数据集不是batch形...

python解析多层json操作示例

本文实例讲述了python解析多层json操作。分享给大家供大家参考,具体如下: 原始文件内容: { "MaskPolygonItem": { "0": {...

Python实现的Excel文件读写类

本文实例讲述了Python实现的Excel文件读写类。分享给大家供大家参考。具体如下: #coding=utf-8 #################################...