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

我好了。

一、定义:

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 jsonif __name__ == '__main__':# 可查看json路径,lib目录下是python自带模块print(json.__file__)   #D:\Python38\lib\json\__init__.pys='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 jsonif __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 jsonif __name__ == '__main__':o=34  #<class 'str'>  34o='3.14'  #<class 'str'>  "3.14"o=None  #<class 'str'>  nullo=False  #<class 'str'>  falseo=(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 jsonif __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/

JSON又是什么东西相关推荐

  1. 随机森林(Random Forest)为什么是森林?到底随机在哪里?行采样和列采样又是什么东西?

    ensemble.RandomForestClassifier([-]) A random forest classifier. ensemble.RandomForestRegressor([-]) ...

  2. lan和adsl是什么信号_什么是LAN 和WLAN ?DSL和ADSL又是什么东西

    一.什么是LAN 和WLAN ? LAN 局域网络(Local Area Network) LAN 为一范围较小区域的网络,通常是在一个公司的办公室或公司组织的内部或一建筑物内架设的网络.通常网络连接 ...

  3. C#之反射又是什么东西

    学C#的好多人都提反射色变,觉得这是个很高级的东西.好吧,反射使用的技术的确高级,但是我们应用起来却是非常的容易,微软体贴的优点在这时候就凸显出来了. 其实反射很简单,它的本质就是去在运行时动态的加载 ...

  4. 第十七节:ES6新增的Map和WeakMap 又是什么东西?

    上节介绍了Set和WeakSet,这节咱就讲Map和WeakMap是什么?当然,两者之前并没什么必然的联系,仅仅是用法类似. 什么是Map 介绍什么是Map,就不得不说起Object对象,我们都知道O ...

  5. v3.exo是什么文件_exo文件是什么东西 exo体又是什么东西

    满意答案 manan147 推荐于 2017.10.07 采纳率:49%    等级:9 已帮助:663人 exo文件是一种字体文件, exo体是exo组合专有字体. EXO是韩国SM娱乐有限公司于2 ...

  6. bat和cmd文件是什么,dos又是什么东西

    bat文件是dos下的批处理文件.批处理文件是无格式的文本文件,它包含一条或多条命令.它的文件扩展名为 .bat 或 .cmd.在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用cm ...

  7. java中的string是什么意思_java中String[][] 是什么东西?string[]又是什么东西?

    展开全部 String[][]是二维数组.例如:String[][] str=new String[4][4],这是创建了一个有4行4列元3231313335323631343130323136353 ...

  8. Pycharm又是啥东西?

    [pycharm简介] 1.当你熟练掌握了python的ABC,掌握了内功心法,却一直找不到一件趁手的兵器,你说烦人不烦人,这个时候pycharm是你的不二选择. 2.pycharm是啥?PyChar ...

  9. 转载自——Json.net动态序列化以及对时间格式的处理

    关于我工作中对Json处理的东西 第一:动态序列化类 第二:时间格式处理 通常我们一个类里 可能有十到更多的属性,但是我们序列化通常只需要序列化其中的 三到五个这样的话就会有多余的数据 如果 我只想序 ...

最新文章

  1. Unity3D Image 组件附入图片问题
  2. 转帖DataTable批量插入数据库
  3. php限制ip访问次数 并发_[转]nginx限制某个IP同一时间段的访问次数
  4. python bind_Python bind-允许同时按下多个键
  5. Java BufferedReader mark()方法与示例
  6. C++不同数据类型的转换
  7. AppScan 7.8.1 - 简体中文
  8. python剑指offer剪绳子
  9. excel转置怎么操作_直接理解转置卷积(Transposed convolution)的各种情况 - 颀周
  10. 时空数据生成对抗网络研究综述(下)
  11. html外链自动加nofollow,WordPress文章/页面外链自动添加nofollow属性的方法
  12. C语言 输入一个5行5列的数组。1.求数组主对角线上元素的和。2.求出辅对角线上元素的积。3.找出主对角线上最大的值及其位置
  13. 美国波多里奇国家质量奖(MBNQA)简介
  14. Linux菜鸟笔记——修改默认语系
  15. 180701 icon文件查找与转换网站
  16. memcpy函数与结构体对齐
  17. 使用MATLAB连接MySQL数据库
  18. 关于在Windows10 上PPT 2016不能插入Flash动画问题
  19. 自动挡车驾车注意事项
  20. request.js

热门文章

  1. 最短路径算法——SPFA算法
  2. java美化代码快捷键,java编写代码常用快捷键
  3. linux yum fping,ping fping
  4. 学习 Java 编程的前景如何?
  5. 海马扫描Linux,海马扫描软件
  6. 有一位做护士的女朋友,是怎样的一种体验?
  7. 使用DelayQueue模拟订单超时自动取消
  8. 2022年全球市场穿梭式货架总体规模、主要生产商、主要地区、产品和应用细分研究报告
  9. 如何编写弹出窗口不被IE阻止的程序
  10. for 循环的三种遍历方式