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

yipeiwu_com6年前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程序设计有所帮助。

相关文章

对Pytorch中Tensor的各种池化操作解析

AdaptiveAvgPool1d(N) 对一个C*H*W的三维输入Tensor, 池化输出为C*H*N, 即按照H轴逐行对W轴平均池化 >>> a = torch...

python实现多张图片拼接成大图

python实现多张图片拼接成大图

本文实例为大家分享了python实现多张图片拼接成大图的具体代码,供大家参考,具体内容如下 上次爬取了马蜂窝的游记图片,并解决了PIL模块的导入问题,现在直奔主题吧: import...

详解django中自定义标签和过滤器

详解django中自定义标签和过滤器

想要实现自定义标签和过滤器需要进行准备工作: 准备(必需)工作: 1  在某个app下创建一个名为templatetags(必需,且包名不可变)的包。假设我们在名为polls的...

浅谈Python 中整型对象的存储问题

在 Python 整型对象所存储的位置是不同的, 有一些是一直存储在某个存储里面, 而其它的, 则在使用时开辟出空间. 说这句话的理由, 可以看看如下代码: a = 5 b = 5...

解决PyCharm控制台输出乱码的问题

解决PyCharm控制台输出乱码的问题

最近公司新换了台电脑,各种开发环境要重新配置,想想Paas确实还是有市场的,如果有了,这种情况可以省下不少气力。吐槽一下,言归正传 装完python后,继续装好PyCharm。把之前的程...