第1关:JSON篇:JSON基础知识

任务描述

本关任务:手动编写一个 JSON 格式的数据文件。

相关知识

JSON 全称:JavaScript Object Notation(JavaScript 对象表示法),是一种轻量级的文本数据交换格式。与接下来要介绍的 XML 相比,拥有更小、更快、更易解析的特点。

一个典型的 JSON 格式的字符串如下:

  1. {
  2. "students":
  3. [
  4. { "name":"赵昊" , "age": 15 },
  5. { "name":"龙傲天" , "age": 16 },
  6. { "name":"叶良辰" , "age": 17 }
  7. ]
  8. }

可以看到其结构和 Python 的listdict有点相似。

数据表示

JSON 中数据都以名称:值的形式表示,名称包括在一对双引号" "中,值则有多种形式,多条数据之间用逗号,隔开,比如:

  1. "name":"赵昊"
  2. "name":"赵昊","age":15

这种表示方式与 Python 的dict类似。

数据类型

JSON 的值可以是如下类型:

  • 字符串(在双引号中)
  • 数字(整数或浮点数)
  • 逻辑值(true 或 false
  • 数组(在中括号中)
  • 对象(在大括号中)
  • null

比如:

  1. "name":"赵昊" , "age":15 , "height":170.5 , "ismale" : false , house":null

数组 JSON 的数组用一对方括号[]表示,类似于list,数组元素用逗号,隔开,元素值可以是任意 JSON 数据类型,比如:

  1. "names":["赵昊","龙傲天","叶良辰"]
  2. "ages":[15,16,17]

对象 JSON 的对象用一对大括号{}表示,类似于dict,对象可以拥有多个名称/值 对名称/值 对用逗号,隔开,比如:

  1. "first":{ "name":"赵昊" , "age": 15 }

编程要求

根据提示,在右侧编辑器补充代码,创建一个 JSON 格式的字符串,创建完成后,记得删除第一行提示语,要求:

  • 返回的 JSON 字符串代表一个对象
  • 对象的属性有:
    • students:一个数组,包含三个学生对象
    • count:学生的数量,在这里是3
  • 学生对象的属性:
    • 名称name,字符串类型
    • 年龄agenumber(int)类型
    • 是否为男性ismale,逻辑值类型

三个学生对象的数据:

  • 名称:赵昊,年龄:15,男性
  • 名称:龙傲天,年龄:16,男性
  • 名称:玛丽苏,年龄:15,女性

测试说明

测试代码会解析这个文件内的 JSON 字符串,并将其中的数据打印出来。 如果文件成功解析而且数据填写正确,将会有如下结果输出: 学生数:3 名称:赵昊,年龄:15,男性 名称:龙傲天,年龄:16,男性 名称:玛丽苏,年龄:15,女性

代码: 


{
    "students":[ 
        { 
            "name":"赵昊" ,
            "age": 15, 
            "ismale":true
        }, 
        { 
            "name":"龙傲天" , 
            "age": 16,
            "ismale":true
        }, 
        { 
            "name":"玛丽苏" ,
            "age": 15, 
            "ismale":false
        }
    ],
    "count":3
}

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jerry&

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值