python中使用json的解析和转换非常简单,只要导入json包即可。
其中的两个主要方式是dumps和loads.具体介绍如下:
| 方法 | 作用 |
|---|---|
| dumps | 将对象转换为json字符串 |
| loads | 将json字符串转换为对象 |
用法如下:
import json
class Node:
'node类'
def __init__(self, question, answer,sim):
self.question = question
self.answer = answer
self.sim=sim
#用来将得到的object转换为具体的类实例
def fromjson(obj):
return Node(obj['question'],obj['answer'],obj['sim'])
#定一个node实例
node=Node('q','a',1)
#定义一个json字符串
data=[{'q':'qq','a':'aa','sim':1}]
#将node转换为json字符串
jstring=json.dumps(node.__dict__)
print(jstring)
#再将得到的字符串转换为node实例
obj=json.loads(jstring)
node=fromjson(obj)
print(type(node))
值得注意的是json中类型的转换对应关系。
其中python中类型对应json中的类型对应关系如下:
| Python | JSON |
|---|---|
| dict | object |
| list, tuple | array |
| str, unicode | string |
| int, long, float | number |
| True | true |
| False | false |
| None | null |
json中类型对应python中的类型对应关系如下:
| JSON | Python |
|---|---|
| object | dict |
| array | list |
| string | unicode |
| number (int) | int, long |
| number (real) | float |
| true | True |
| false | False |
| null | None |
本文介绍了Python中使用JSON模块的方法,包括如何将Python对象转换为JSON字符串(dumps),以及如何将JSON字符串转换回Python对象(loads)。同时给出了具体的示例代码,并详细说明了Python与JSON类型之间的转换关系。
841

被折叠的 条评论
为什么被折叠?



