Python语言学习笔记之七(JOSN应用)

本课程对于有其它语言基础的开发人员可以参考和学习,同时也是记录下来,为个人学习使用,文档中有此不当之处,请谅解。

1、认识Json

JSON (JavaScript Obiect Notation)是一种轻量级的数据交换格式,它是ECMAScript的一个子集,用于存储和交换文本信息。JSON使用JavaScript的语法描述和操纵数据,但它是Python、Java、C++和其他许多编程语言的一个子集.

1.1 JSON的特点:

  1. 语法简单:JSON使用易于阅读的键值对形式表示数据,其中“键”是一个字符串,"值"可以是数字、字符串、布尔值、数组或对象。
  2. 数据独立性:JSON独立于编程语言和平台,可以在不同的系统和环境中使用
  3. 可读性强: JSON的语法使得数据易于阅读和理解,特别适合于数据交换和存储
  4. 广泛使用: JSON已经广泛用于Web开发、API接口、数据存储和交换等领域

1.2 JSON基本语法

  1. 对象:表示一个JSON对象是一个键值对的集合,它包括大括号和包含在大括号中的键值对,键和值之间用冒号:分隔,每个键值对之间用逗号,分隔。
  2. 属性: 在JSON对象中,每个键都是一个属性,每个属性都有一个名称和一个值.
  3. 数组:表示一个JSON数组是一个有序的值的集合,它包括方括号{}和包含在方括号中的值。每个值之间用逗号,分隔.
  4. 值:在JSON中,每个值都是一个数字、字符串、布尔值、数组或对象。
  5. 空: JSON对象和数组可以包含一个空值,表示没有任何元素或属性
  6. 注释: 在JSON中,注释是可选的,可以用//来注释一行,也可以用/*...*/来注释多行
  7. 转义字符:在JSON字符串中,反斜杠\、双引号”、反引号”等字符需要转义,以避免与语法冲突

1.3 JSON存储格式样例:

JSON对象包含四个属性name、age、hobbies和个字符串,age的值是一个address。name的值是数字,hobbies的值是一个数组,address的值是一个嵌套的JSON对象

1.4 JSON应用场景

  1. Web开发: JSON经常用于与Web应用程序进行数据交换,特别是在RESTful API中
  2. 数据存储和交换:JSON可以用于存储和交换结构化数据,例如在数据库、文件系统和网络通信中
  3. 客户端与服务器之间的通信: 在客户端和服务器之间传输数据时,JSON是一种常见的数据格式
  4. 配置文件: JSON可以用于存储和读取配置数据,例如应用程序的设置和参数
  5. 数据可视化:JSON可以用于生成可交互的数据可视化图表,例如使用JavaScript库如D3.is等

2、JSON方法

1、json.dumps(): 将Python对象转换为JSON字符串;

代码:

结果:

2、json.dump():将Python对象写入JSON文件

3、json.load(): 从JSON文件中读取Python对象

3、JSON在Python项目中的应用

  1. 数据交换:JSON可以用于在不同的系统、平台和语言之间进行数据交换。在Web开发中、JSON常用于服务器与客户端之间的数据传输,如RESTfulAPI的请求和响应
  2. 数据存储:JSON可以用于将结构化数据存储在文件或数据库中Python内置的ison模块提供了将Python对象序列化为JSON字符串以及将JSON字符串反序列化为Python对象的功能
  3. 数据处理:JSON可以用于解析和操作大规模的数据集。在大数据处理和机器学习领域,JSON格式的数据常用于输入和输出各种模型和算法。

4、JSON在人工智能中的应用

  1. 数据存储:JSON可以用于将结构化数据存储在文件或数据库中,在机器学习领域,训练集通常以JSON格式存储,便于后续的数据读取和预处理
  2. 数据处理:JSON可以用于解析和操作大规模的数据集。在大数据处理和机器学习领域,JSON格式的数据常用于输人和输出各种模型和算法
  3. 模型定义:在机器学习领域,一些框架(如TensorFlow、PyTorch等) 使用JSON格式来定义模型的结构。这些JSON文件包含了模型的所有层、节点和连接信息。
  4. 结果解析:在机器学习实验中,模型的输出结果有时会以JSON格式返回,便于解析和处理
  5. API接口数据交互:在后端开发中,JSON常用于API接口的数据交互。通过定义好数据的结构和类型,开发人员可以更方便地构建和解析JSON数据。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/188762.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

笔记二十五、React中setState是同步还是异步的?

在react18版本之前setState既可以是同步也可以是异步的 在Promise的状态更新、js原生事件、定时器中是同步的 在react的合成事件中,是异步的 在react18版本之后是setState异步的 代码 import React, {Component} from react;class Async extends Component {state …

计算机网络测试题

一 单项选择题(5分) 1、假设要发送的数据为101110,采用CRC的生成多项式是X31,试求应添加在数据后面的余数。(5分) 110 011(答案) 101 001 实际得分:5分 二 填空题(95分) 1、以下3个子地址块…

json.decoder.JSONDecodeError: Extra data: line 1 column 332 (char 331)

项目场景: 提示:扩充数据集时,同步修改json标签中的"imagePath"字段的值,出现json文件读写不一致问题。 采用open函数读写模式修改json文件字段。open(jsonF.json, r)。 问题描述 运行修改json文件报错:j…

防孤岛装置在光伏发电、燃气发电等新能源并网供电系统的应用

• AM5SE-IS防孤岛保护装置主要适用于35kV、10kV及低压380V光伏发电、燃气发电等新能源并网供电系统。 • 当发生孤岛现象时,可以快速切除并网点,使本站与电网侧快速脱离,保证整个电站和相关维护人员的生命安全**。 保护功能** ● 三段式过流…

数据记录的方法(轻量级)

一.文件操作 1.打开文件 fpopen(name[,mode[,buffereing]) 需要定义一个变量,再选择文件的打开参数。需要注意的是,如果参数选择不为w,w,a或a那么文件必须一开始就存在,否则会出现FileNotFoundError类型报错。此外为避免出现报错&#xff…

Linux git

1.Git 初识 不知道你⼯作或学习时,有没有遇到这样的情况:我们在编写各种⽂档时,为了防止文档丢失,更改失误,失误后能恢复到原来的版本,不得不复制出⼀个副本,⽐如: “报告-v1”? …

nodejs 上传文件到 OSS

1、通过脚本上传文件到OSS服务器,需要使用ali-oss插件 npm i ali-oss2、首先,需要添加一个OSS实例,并填写连接OSS的数据 const OSS require(ali-oss); const ossClient new OSS({region: oss-cn-XXX,accessKeyId: XXXX,accessKeySecret: …

机器视觉新功能上线:同步训练多个模型,智造的脚步又加快了!

“AI视觉”的应用,为当下诸多企业的生产智能化打开了新的想象空间。其中,深度学习作为AI视觉的核心技术,在实际应用中往往需要经历一个耗时较长的阶段——深度学习神经网络模型训练。其目的是通过使用已标注的数据集来训练模型,使…

Java-- 日期的运算

目录 1.Calendar 转化 String 2.String 转化Calendar 3.Date 转化String 4.String 转化Date 5.Date 转化Calendar 6.Calendar转化Date 7.String 转成 Timestamp 8.Date 转 TimeStamp 9代码示例: 10.将日期拆解出来: 11.求n天后的日期 12.JAVA日期加减运…

Java系列-LinkedList源码

1.双链表结构 public class LinkedList<E>extends AbstractSequentialList<E>implements List<E>, Deque<E>, Cloneable, java.io.Serializable{transient int size 0;transient Node<E> first;transient Node<E> last;public LinkedLis…

python项目源码保护——代码混淆

什么是代码混淆 代码混淆是指将代码进行加密、压缩、乱序等操作&#xff0c;使得代码难以被阅读和理解&#xff0c;从而达到保护代码的目的。代码混淆可以有效地防止代码被反编译和盗用&#xff0c;提高代码的安全性。 pyobfuscate pyobfusate通过多种方式转换源代码。其中一…

Scan Context / Scan Context ++ 论文和源码阅读

Title: Scan Context / Scan Context 论文和源码阅读 文章目录 前言I. Scan Context 的构造A. 论文内容B. 源码内容 2. Ring Key/Retrieval Key 的计算A. Ring KeyB. Retrieval Key 3. KD 树搜索 —— 第一阶段搜索A. KD 树构建B. KD 树搜索 4. Scan Context 距离搜索 —— 第…

基于mps的pytorch 多实例并行推理

背景 大模型训练好后&#xff0c;进行部署时&#xff0c;发现可使用的显卡容量远大于模型占用空间 。是否可以同时加载多个模型实例到显存空间&#xff0c;且能实现多个实例同时并发执行&#xff1f;本次实验测试基于mps的方案&#xff0c;当请求依次过来时&#xff0c;多个相…

一种LED驱动专用控制电路方案

一、基本的概述 TM1651 是一种带键盘扫描接口的LED&#xff08;发光二极管显示器&#xff09;驱动控制专用电路&#xff0c;内部集成有MCU 数字接口、数据锁存器、LED 高压驱动、键盘扫描等电路。本产品性能优良&#xff0c;质量可靠。采用SOP16/DIP16的封装形式。 二、特性说…

整体迁移SVN仓库到新的windows服务器

一、背景 公司原有的SVN服务器年代比较久远经常出现重启情况&#xff0c;需要把SVN仓库重新迁移到新的服务器上&#xff0c;在网上也搜到过拷贝Repositories文件直接在新服务器覆盖的迁移方案&#xff0c;但考虑到原有的操作系统和现有的操作系统版本不一致&#xff0c;SVN版本…

获取窗口中文标题栏GetWindowText()

GetWindowText(hwnd, lpString, len)会根据传入的第二个参数lpString 判断是ASCII或者Unicode编码选择调用GetWindowTextA(hwnd, lpString, len)&#xff0c;还是GetWindowTextW(hwnd, lpString, len)&#xff0c;所以想获取中文标题直接调用GetWindowTextW() ASCII GetWindowT…

frp 配置内网访问

frp介绍 frp 是一个开源、简洁易用、高性能的内网穿透软件&#xff0c;支持 tcp, udp, http, https 等协议。frp 项目官网是 https://github.com/fatedier/frp 下载地址&#xff1a; https://github.com/fatedier/frp/releases frp工作原理 服务端运行&#xff0c;监听一个…

分治算法——75. 颜色分类

文章目录 &#x1f33f;0. 分治&#x1f33b;1. 题目&#x1f33c;2. 算法原理&#x1f334;3. 代码实现 &#x1f33f;0. 分治 分治分治&#xff0c;顾名思义分而治之&#xff0c;将一个大问题转换成若干个子问题&#xff0c;再将这些子问题的基础上继续划分成更小的子问题&a…

【新手解答3】深入探索 C 语言:头文件提供必要的接口、源文件保持实现细节的私有性 + 进一步学习的方向 + 如何快速编写程序并最终能制作小游戏

C语言的相关问题解答 写在最前面问题1&#xff1a;头文件提供必要的接口、源文件保持实现细节的私有性封装在头文件中的作用源文件中的“封装”总结 问题2&#xff1a;接下来的学习方向问题3&#xff1a;如何快速编写程序并最终能制作小游戏1. 基本编程概念2. 数组和基本算法3.…

PyQt基础_011_对话框类控件QMessage

基本功能 import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import *class WinForm( QWidget): def __init__(self): super(WinForm,self).__init__() self.setWindowTitle("QMessageBox") self.resize(300, 100) self.myButt…