`
nigelzeng
  • 浏览: 606607 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

python解析jason数据

阅读更多

 

今天在观察python脚本的时候,看到了python解析jason数据这么一段。

经过相关查找,终于弄清楚了python是怎么解析jason结构,取得数据的。

 

我们通过以下命令:

 

    target = urlopen(url, 'utf8')
    try:
        target = json.loads(target)
    except:
        print 'load json error!!'
 

 

取得了这么一段jason数据:

{
    "title": "报表",
    "tables": {
        "example1": {
            "id": "first",
            "values": [
                {
                    "key": "one",
                    "value": "1234"
                },
                {
                    "key": "two",
                    "value": "12345"
                },
                {
                    "key": "three",
                    "value": "123456"
                },
            ]
        },
        "example2": {
            "id": "second",
            "values": [
                {
                    "key": "four",
                    "value": "321"
                },
                {
                    "key": "five",
                    "value": "4321"
                },
        },
    }
}
 

我们应该如何拿到里面的数据呢?比如说拿到key为“three”,value为“123456”的值,那么我们可以这样获取数据:

 

 

 

get_value = target['tables']['example1']['values'][2]['value']

 

 

首先,需要理解jason的结构:

 

 写道
JSON建构于两种结构:
“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。
值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。

 

 

 写道
JSON具有以下这些形式:

对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。



 

数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。



 

值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。



 

 

而python会把对应的jason结构翻译过来,对应的关系如下:

 

  JSON  Python
object dict
array list
string unicode
number (int) int, long
number (real) float
true True
false False
null None

 

 

所以我们使用 get_value = target['tables']['example1']['values'][2]['value'] 就可以得到“123456”这个值。

同理,使用 get_value = target['tables']['example2']['values'][0]['key']就可以得到“four”这个值了。

 

本文只是简单的分析,并没有深入研究,

待到对python的学习再深入一点再回头来看看,应该会有很大的改进!

:)

 

 

参考:http://www.json.org/json-zh.html

http://docs.python.org/library/json.html

  • 大小: 4.3 KB
  • 大小: 3.6 KB
  • 大小: 6.5 KB
分享到:
评论

相关推荐

    python 调用API接口 获取和解析 Json数据

    step2:数据解析,也是核心部分,数据格式从python角度去理解,是字典?列表?还是各种嵌套? step3:连接mysql数据库,将数据写入。 从功能上看,该数据获取程序可以分为3个方法,即step1对应方法request_data(),...

    Jason解析和生成工具类

    "Jason解析和生成工具类"指的是一个编程工具,它提供了对JSON数据进行解析和生成的函数或类库。这样的工具通常包含以下功能: 1. **解析JSON**:将JSON格式的字符串转换为程序内部的数据结构,如对象或数组。例如,...

    Python库 | jason_server-0.8.1-py2.py3-none-any.whl

    "jason_server-0.8.1-py2.py3-none-any.whl" 是一个针对Python的特定库的压缩包文件,名为“jason_server”,版本号为0.8.1。这个文件是Python的wheel格式,它是一种预先编译的Python分发包,使得安装过程更为便捷。...

    PB9生成和解析JSON

    3. 将解析后的数据映射到PB9的数据结构:这可能涉及创建新的对象或填充已有的数据表。 例如,一个解析JSON的函数可能如下所示: ```python function object ParseJson(string jsonString) // 创建一个空字典来...

    jason 关于jason解析的实例

    在"Jason关于jason解析的实例"中,我们可以深入探讨以下几个关键知识点: 1. **JSON的基本结构**:JSON的数据结构主要由对象(Object)和数组(Array)组成。对象是键值对的集合,用花括号{}包围,键与值之间用冒号...

    iOS jason鬼脸解析工具

    【iOS Jason鬼脸解析工具】是一款专为iOS设备设计的JSON文件分析工具,它能够帮助开发者和普通用户方便地生成、查看和理解JSON数据。在iOS应用开发中,JSON(JavaScript Object Notation)是一种常见的数据交换格式...

    JSON 解析 示例代码

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式,但也使用了类似于C家族语言,包括C、C++、C#、Java、JavaScript、Perl、Python等。JSON易于人阅读和编写,同时也...

    python实现Alphapose骨骼关键点信息的提取

    在IT行业中,Python是一种广泛应用的编程语言,尤其在数据处理和人工智能领域。本文将深入探讨如何使用Python来实现Alphapose骨骼关键点信息的提取,这是一个涉及到图像处理和计算机视觉的重要任务。Alphapose是一款...

    Jason转换excel格式

    Jason,全称为JavaScript Object Notation,是一种轻量级的数据交换格式,它以文本形式存储和传输数据,易于人阅读和编写,同时也易于机器解析和生成。另一方面,Excel则是Microsoft Office套件中的电子表格程序,...

    mac端jason鬼脸

    在Mac平台上,"Jason鬼脸"是一款专为JSON数据处理设计的应用程序,它提供了一种简单易用的方式来解析、格式化以及与后端系统交互JSON数据。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛应用...

    JSON的封装和解析

    2. **数据验证**:解析后的数据可能需要进行类型检查或验证,以确保其符合预期的结构和内容。 3. **安全考虑**:避免JSON注入攻击,对用户输入的数据进行严格的过滤和转义,防止恶意数据篡改JSON结构。 **五、示例...

    json.rar_JSON_asp jason_jason

    描述中提到"asp调用jason数据,使用jason类。可以调用多种格式的jason数据。"这表明这个"jason"类提供了丰富的功能,能够处理不同结构和格式的JSON数据。在ASP中,通常我们需要将接收到的JSON字符串转换为ASP可以...

    henry_Jason

    1. Python:Python有内置的json模块,可以方便地进行Jason数据的序列化和反序列化。 2. JavaScript:JavaScript原生支持JSON,可以通过`JSON.parse()`和`JSON.stringify()`方法进行操作。 3. Java:Java有`...

    python网络编程(内含几个自己找的爬虫例子)

    Python网络编程是一个广泛的...总之,Python网络编程涵盖了从基础的网络请求到复杂的爬虫开发,涉及HTTP协议、数据解析、数据存储等多个方面。通过学习和实践,你可以构建自己的网络应用,甚至构建高效的数据抓取系统。

    中国省市县三级连动json数据

    在实际开发中,可以利用JavaScript或其他支持JSON的编程语言(如Python、Java等)解析这些数据。例如,使用JavaScript的`JSON.parse()`函数将字符串化的JSON转换为JavaScript对象,然后通过遍历对象结构来渲染UI或...

    Python for Kids

    3. **应用广泛**:无论是Web开发、数据分析还是人工智能等领域,Python都有着广泛的应用场景。 4. **培养逻辑思维**:通过编程解决问题的过程可以锻炼孩子们的逻辑思维能力。 ##### 三、书籍内容概览 根据提供的...

    Beginning.Python

    - **数据库交互**:本书还介绍了如何利用Python连接数据库并进行数据操作。 - **图形用户界面**:对于希望开发桌面应用的读者来说,本书也提供了关于GUI编程的基础知识。 #### 六、实践项目引导 - **实战案例**:...

    陕西省geojson数据,包含完整市区

    它基于JavaScript对象表示法(JSON),因为JSON是互联网上最广泛使用的数据格式之一,易于阅读和编写,同时也容易被机器解析和生成。在本例中,"陕西省geojson数据"包含了陕西省所有市区的地理空间信息。 GeoJSON...

    全国All城市街道数据.zip

    描述中提到“全国街道的Jason数据齐全”,这告诉我们内部数据是以JSON(JavaScript Object Notation)格式存储的。JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它常用于Web服务和...

    personJsonPorketJoke:PorketJokes的Jason数据

    描述中的内容与标题相同,再次强调了这是"PorketJokes"应用的Jason数据。这可能意味着这个数据集包含了一系列的笑话,每个笑话以JSON对象的形式存在,可能包括笑话的ID、内容、作者、分类等信息。 遗憾的是,没有...

Global site tag (gtag.js) - Google Analytics