• python json


    #-*-coding:utf-8-*- 
    
    '''编码格式记得统一,不然容易出现中文乱码,推荐用utf-8'''
    
    import json
    
    ##################json单对象##############################
    #声明初始化一个变量
    obj={'name':'张三', 'email':'ljq@gmail.com'}
    print type(obj) #<type 'dict'>
    
    #字典转为json
    #json_obj=json.dumps(obj) 
    json_obj=json.dumps(obj, ensure_ascii=False) #解决中文乱码
    print type(json_obj) #<type 'str'>
    print json_obj #{"name": "ljq", "email": "ljq@gmail.com"}
    
    #字符串转为json
    str="{'name':'李四', 'email':'lisi@gmail.com'}"
    #json_str=json.dumps(str)
    json_str=json.dumps(str, ensure_ascii=False)
    print json_str #"{'name':'张安', 'email':'ljq@gmail.com'}"
    
    #json转为字典
    dict_obj=json.loads(json_obj)
    #如果传入的对象的编码不一致的话,需要用encoding指定字符编码
    #dict_obj=json.loads(json_obj, encoding="utf8") 
    print type(dict_obj) #<type 'dict'>
    print dict_obj.get('name','')
    
    #json转为字符串
    unicode_str=json.loads(json_str)
    dict_str=eval(unicode_str)
    print type(unicode_str) #<type 'unicode'>
    print type(dict_str)
    print dict_str.get('name', '')
    
    ##################json数组##############################
    arrays=[
        {'name':'zhangsan', 'age':10},
        {'name':'lisi', 'age':20},
        {'name':'wangwu', 'age':30}
    ]
    
    arrays_json=json.dumps(arrays)
    print type(arrays_json) #<type 'str'>
    
    for obj in json.loads(arrays_json):
        #print type(obj) #<type 'dict'>
        print obj.get('age', '')
    
    ##################django内置json---simplejson##############################
    '''
    import simplejson as json
    
    #几个主要函数:dump、dumps、load、loads,带s跟不带s的区别: 带s的是对 字符串的处理,而不带 s的是对文件对像的处理。
    
    json、simplejson效率比较:simplejson在效率上来得有优势,推荐用simplejson
    
    '''
  • 相关阅读:
    为何url地址不是直接发送到服务器,而是被编码后再发送
    http请求分析
    Nginx+Php不支持并发,导致curl请求卡死(Window环境)
    Vue开发调试神器 vue-devtools
    什么是闭包?闭包的优缺点?
    Nginx 504 Gateway Time-out分析及解决方法
    HTTP请求8种方法
    MySQL查询缓存总结
    MySQL单表多次查询和多表联合查询,哪个效率高?
    分布式系统一致性问题解决实战
  • 原文地址:https://www.cnblogs.com/linjiqin/p/3674745.html
Copyright © 2020-2023  润新知