zoukankan      html  css  js  c++  java
  • python初步学习-python 模块之 json

    json 模块

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写。一般API返回的数据大多是 JSONXML,如果返回JSON的话,将获取的数据转换成字典,方便在程序中处理。

    JSON库经常用的有两种方法dumps()loads();还有 dump()load()

    • dump()load()通常用于对文件进行编码和解码,用的较少。
    • dumps()loads()通常用于对字符串进行编码和解码

    dumps()

    json.dumps()用于将python对象编码成JSON字符串

    >>> dict = {'user':[{'user1': 123}, {'user2': 456}]}
    >>> type(dict)
    <type 'dict'>
    >>> json_str = json.dumps(dict)
    >>> type(json_str)
    <type 'str'>
    >>> print json_str
    '{"user": [{"user1": 123}, {"user2": 345}]}'
    
    ## 请注意如果直接使用 str() 函数对字典进行字符串处理
    >>> json_str_test = str(dict)
    >>> print json_str_test
    "{'user': [{'user1': 123}, {'user2': 345}]}"
    
    

    直接进行字符串处理,和通过 json.dumps() 处理的结果虽然都是字符串,但是字符串中的 key 的格式不一样。这种不一样导致了 通过 json.dumps() 处理后的数据属于合法数据。查看 JSON 数据是否合法可以使用下面这个网站。

    JSON表达式检验网站

    loads()

    json.loads()用于将JSON字符串解码为python对象,该函数返回python字段的数据类型。

    >>> dict = {'user':[{'user1': 123}, {'user2': 456}]}
    >>> json_str = json.dumps(dict)
    >>> print json_str
    {"user": [{"user1": 123}, {"user2": 456}]}
    >>> d = json.loads(json_str)
    >>> print d
    {u'user': [{u'user1': 123}, {u'user2': 456}]}
    
    ## 可以通过 Key 来获取相对应的 Vlaue
    >>> d['user']
    [{u'user1': 123}, {u'user2': 456}]
    
  • 相关阅读:
    package.json中 npm依赖包版本前的符号的意义
    移动端1px的border
    react下将输入的汉字转化为拼音
    h5打开App的方法。
    图片在缩放截取后以固定尺寸上传到第三方
    图片裁切,上传,自动匹配颜色。
    ReactNative学习一
    MySQL数据库8(二)MySQL基本介绍
    MySQL数据库8(一)SQL简介

  • 原文地址:https://www.cnblogs.com/pingqiang/p/7828661.html
Copyright © 2011-2022 走看看