Python3实现的字典、列表和json对象互转功能示例

yipeiwu_com5年前Python基础

本文实例讲述了Python3实现的字典、列表和json对象互转功能。分享给大家供大家参考,具体如下:

python3可以使用json模块操作json

json.dumps(): 对json进行编码,对应php的json_encode()

json.loads(): 对json进行解码,对应php的json_decode()

test.py

#!/usr/bin/python3
import json
#python字典类型转换为json对象
data = {
  'id' : 1,
  'name' : 'test1',
  'age' : '1'
}
data2 = [{
  'id' : 1,
  'name' : 'test1',
  'age' : '1'
},{
  'id' : 2,
  'name' : 'test2',
  'age' : '2'
}]
json_str = json.dumps(data)
print ("python原始数据:", repr(data))
print ("json对象:", json_str)
json_str2 = json.dumps(data2)
print ("python原始数据:", repr(data2))
print ("json对象:", json_str2)
# 将json对象转换为python字典
data3 = json.loads(json_str)
print ("data3['name']: ", data3['name'])
print ("data3['age']: ", data3['age'])

执行结果

[root@mail pythonCode]# python3 test.py
python原始数据: {'id': 1, 'name': 'test1', 'age': '1'}
json对象: {"id": 1, "name": "test1", "age": "1"}
python原始数据: [{'id': 1, 'name': 'test1', 'age': '1'}, {'id': 2, 'name': 'test2', 'age': '2'}]
json对象: [{"id": 1, "name": "test1", "age": "1"}, {"id": 2, "name": "test2", "age": "2"}]
data3['name']:  test1
data3['age']:  1

PS:关于json操作,这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json

JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat

在线json压缩/转义工具:
http://tools.jb51.net/code/json_yasuo_trans

更多Python相关内容感兴趣的读者可查看本站专题:《Python操作json技巧总结》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python的Django框架中自定义模版标签的示例

为了自定义一个模板标签,你需要告诉Django当遇到你的标签时怎样进行这个过程。 当Django编译一个模板时,它将原始模板分成一个个 节点 。每个节点都是 django.templat...

Pytorch卷积层手动初始化权值的实例

Pytorch卷积层手动初始化权值的实例

由于研究关系需要自己手动给卷积层初始化权值,但是好像博客上提到的相关文章比较少(大部分都只提到使用nn.init里的按照一定分布初始化方法),自己参考了下Pytorch的官方文档,发现有...

python读取文本绘制动态速度曲线

python读取文本绘制动态速度曲线

本文实例为大家分享了python读取文本绘制动态速度曲线的具体代码,供大家参考,具体内容如下 由于需要分析机械加工过程中各个轴的速度,于是用软件导出了数据,写了这个python脚本来显示...

Python中声明只包含一个元素的元组数据方法

调试程序的时候,就吃过这个亏,不知道为何Python使用括号做元组声明边界符,估计是找不到合适的符号了。中括号用来声明列表,花括号用来声明字典,元组号只能用括号来声明了。有其他语言编程经...

django+echart绘制曲线图的方法示例

django+echart绘制曲线图的方法示例

声明:请事先到官网下载echarts,另外本文引用了adminlte模板构建前台页面 views: <!-- /.row --> <div class="r...