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

相关文章

关于Python形参打包与解包小技巧分享

Python中的函数调用与c++不同的是将this指针直接作为self当作第一个形参进行处理,从而将静态函数与实例方法的调用形式统一了起来。在实际编程过程中,可以通过传递函数的地址、函数...

20行python代码实现人脸识别

20行python代码实现人脸识别

OpenCV 是最流行的计算机视觉库,原本用 C 和 C++ 开发,现在也支持 Python。 它使用机器学习算法在图像中搜索人的面部。对于人脸这么复杂的东西,并没有一个简单的检测能对...

pandas 把数据写入txt文件每行固定写入一定数量的值方法

pandas 把数据写入txt文件每行固定写入一定数量的值方法

我遇到的情况是:把数据按一定的时间段提出。比如提出每天6:00-8:00的每个数据,可以这样做: # -*-coding: utf-8 -*- import pandas as pd...

python利用requests库模拟post请求时json的使用教程

python利用requests库模拟post请求时json的使用教程

我们都见识过requests库在静态网页的爬取上展现的威力,我们日常见得最多的为get和post请求,他们最大的区别在于安全性上: 1、GET是通过URL方式请求,可以直接看到,明文传输...

python中协程实现TCP连接的实例分析

在网络通信中,每个连接都必须创建新线程(或进程) 来处理,否则,单线程在处理连接的过程中, 无法接受其他客户端的连接。所以我们尝试使用协程来实现服务器对多个客户端的响应。 与单一TCP...