JSON又是什么东西

啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊!!!

我好了。

 

一、定义:

JSON(JavaScript Object Notation):JavaScript 对象表示法

1、它不是一种语言,它是一种轻量级的文本数据交换格式。

2、它使用Javascript语法来描述数据对象,但它独立于JavaScript。JSON解析器和JSON库支持许多不同的编程语言。 目前非常多的动态(PHP,JSP,.NET)编程语言都支持JSON。

3、它本身是一串字符串,只是它是一串有固定格式的字符串。符合这个数据格式要求的字符串,我们称之为JSON。

 

二、类型:

数字:整数或浮点数,不能用引号引起来。eg: 3 3.14

字符串:必须用双引号引起来

布尔值:true、false

数组:一组有序值,用中括号引起来。eg:[1, 3.4, "hello", "tom" , null, true, false]

对象:多个键值对,用大括号引起来。eg:{"name": "tom", "age":22, "sex": "男"}

空值:null

 

三、json→python

1、json.loads()

解析json格式的字符串,返回一个python对象(将已编码的json字符串解码为python对象)

import json

if __name__ == '__main__':
    # 可查看json路径,lib目录下是python自带模块
    print(json.__file__)   #D:\Python38\lib\json\__init__.py
  
    s='6'  #<class 'int'>
    s='"3.6"'  #<class 'str'>
    s='hello'  #报错
    s='[1,2,"Ton",true]'  #<class 'list'>
    s='(1,2,"Ton",true)'  #报错
    s='''
    {"name":"Tom","age":22} 
    '''  #<class 'dict'>
    s = '''{'name':"Tom","age":22}'''  #报错
    o=json.loads(s)

    print(type(o))
    print(o)

2、json.load()

解析json文件,返回一个python对象。

1)新建一个file,命名 data.json,输入内容 null

2)

import json

if __name__ == '__main__':
    fo=open("data.json",encoding='utf8')

    o=json.load(fo)

    fo.close()

    print(type(o))  #<class 'NoneType'>
    print(o)  #None

四、python→json

3、json.dumps():

把python对象(任意类型的)转换成json格式的字符串。(将python对象编码成json字符串)

import json

if __name__ == '__main__':
    o=34  #<class 'str'>  34
    o='3.14'  #<class 'str'>  "3.14"
    o=None  #<class 'str'>  null
    o=False  #<class 'str'>  false
    o=(1,2,3,"hello")  #<class 'str'>  [1, 2, 3, "hello"]
    o = [1, 2, 3, "hello"]  # <class 'str'>  [1, 2, 3, "hello"]
    o={"Tom":23,"Amy":45,"John":["二十三",89]}
    # <class 'str'>  {"Tom": 23, "Amy": 45, "John": ["\u4e8c\u5341\u4e09", 89]}
    s=json.dumps(o)
    # 正常显示中文
    s=json.dumps(o, ensure_ascii=False)
    # 将字符串按照层级关系进行折行、缩进
    s=json.dumps(o, ensure_ascii=False,indent=4)

    print(type(s))
    print(s)

4、json.dump()

把python对象(任意类型的)转换成json格式的字符串,并写入json文件。

import json

if __name__ == '__main__':
    # 创建json文件
    fo=open('result.json',"w",encoding='utf8')

    o={"Tom":23,"Amy":45,"John":["二十三",89]}

    json.dump(o,fo,ensure_ascii=False,indent=2)

    fo.close()

 

五、json可以在线优化:https://www.sojson.com/

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值