python

json.dumps() json.loads()

2019-11-01  本文已影响0人  迷糊银儿

前言

应该是我理解能力有问题和基础知识不扎实,我实在是理解错了网上关于这两个函数的定义。理解了后再去看文档,文档是正确的。 image.png

我的理解

  1. json.dumps:把python对象(诸如dict/list/tuple/string等数据结构)转换为字符串。只不过这个字符串比较特别,其特别之处在于它的语法格式同json保持一致。如将字典中的单引号均置为双引号。编码
  2. json.loads:把json化的字符串转换成对应的python对象(诸如dict/list/tuple/string等数据结构) 解码

实例

def testjson():
    dict1={
        'name':'xiaoming',
        'age':22,
        'sex':'man'
    }
    dict2={
        'name':'xiaomei',
        'age':13,
        'sex':'woman'
    }
    listDict=[]
    listDict.append(dict1)
    listDict.append(dict2)
    strJson=json.dumps(listDict)
    print('dict1:',dict1)
    print('listDict原来的样式:',listDict)
    print('listDict dumps后的样式:',strJson)
    listDict=json.loads(strJson)
    print('listDict的类型为:',type(listDict))
    print('listDict的值为:',listDict)


if __name__=='__main__':
    testjson()
dict1: {'name': 'xiaoming', 'age': 22, 'sex': 'man'}
listDict原来的样式: [{'name': 'xiaoming', 'age': 22, 'sex': 'man'}, {'name': 'xiaomei', 'age': 13, 'sex': 'woman'}]
listDict dumps后的样式: [{"name": "xiaoming", "age": 22, "sex": "man"}, {"name": "xiaomei", "age": 13, "sex": "woman"}]
listDict的类型为: <class 'list'>
listDict的值为: [{'name': 'xiaoming', 'age': 22, 'sex': 'man'}, {'name': 'xiaomei', 'age': 13, 'sex': 'woman'}]

上一篇 下一篇

猜你喜欢

热点阅读