东莞企业怎么做网站建设京东优惠券网站建设

张小明 2026/1/11 4:24:24
东莞企业怎么做网站建设,京东优惠券网站建设,黄页堆广,wordpress 中文 字体大小文章目录一、简介和安装二、JSON Schema2.1 JSON Schema入门案例2.2 JSON Schema校验方式-2种2.2.1 在线工具校验2.2.2 python代码校验2.2.3 python代码校验的错误终端提示三、JSON Schema语法3.1 type关键字3.1.1 type语法3.1.2 type示例3.2 properties关键字3.2.1 properties…文章目录一、简介和安装二、JSON Schema2.1 JSON Schema入门案例2.2 JSON Schema校验方式-2种2.2.1 在线工具校验2.2.2 python代码校验2.2.3 python代码校验的错误终端提示三、JSON Schema语法3.1 type关键字3.1.1 type语法3.1.2 type示例3.2 properties关键字3.2.1 properties语法3.2.2 properties示例13.2.3 properties示例23.3 required关键字3.3.1 required语法3.3.2 required示例3.4 const关键字3.4.1 const语法3.4.1 const示例3.5 pattern关键字3.5.1 pattern语法3.5.2 pattern示例四、JSON Schema综合案例一、简介和安装**概念**校验接⼝返回响应结果的全部字段更进一步的断言断言只能校验字段的值。校验内容字段值字段名 或 字段类型校验流程定义 校验规则json语法比对 响应数据(实际结果) 是否 符合 校验规则安装jsonschema:pip install jsonschema -i https://pypi.douban.com/simple/二、JSON SchemaJson Schema: 用来定义json数据约束的一个标准2.1 JSON Schema入门案例// JSON Schema把汉字写的“校验规则描述转为JSON Schema语法如下{type:object,properties:{success:{type:boolean},code:{type:integer},message:{type:string}},required:[success,code,message]}// json数据待校验数据{success:true,code:100,message:操作成功}2.2 JSON Schema校验方式-2种2.2.1 在线工具校验http://json-schema-validator.herokuapp.comhttps://www.jsonschemavalidator.net 【推荐】2.2.2 python代码校验实现步骤1、导包importjsonschema2、定义 jsonschema格式 数据校验规则3、调⽤ jsonschema.validate(instancejson数据,schemajsonshema规则)//instance:实例查验校验结果校验通过返回 None校验失败schema 规则错误返回 SchemaErrorjson 数据错误返回 ValidationError案例 入门案例 # 1. 导包importjsonschema# 2. 创建 校验规则schema{type:object,properties:{success:{type:boolean},code:{type:integer},message:{type:string}},required:[success,code,message]}# 3. 准备 待校验数据用 python语法表示的 json数据json_data{success:True,# 布尔类型的python为Truecode:100.3,message:操作成功}# 4. 调用方法 进行校验resjsonschema.validate(instancejson_data,schemaschema)# 5. 查看校验结果print(校验结果,res)通过结果校验结果 None2.2.3 python代码校验的错误终端提示1、SchemaError校验规则中有语法错误2、ValidationErrorjson数据与校验规则不符导致校验失败。三、JSON Schema语法JSON Schema 关键字描述type表示待校验元素的类型properties定义待校验的JSON对象中 各个key-value对中value的限制条件required定义待校验的JSON对象中 必须存在的keyconstJSON元素必须等于指定的内容pattern使用正则表达式约束字符串类型数据3.1 type关键字type 用于限定待校验JSON元素所属的数据类型。type取值对应的python数据类型描述objectobject对象arraylist 列表数组integerint整数numberfloat或int数字nullNone空boolean True、Falsebool布尔stringstr字符串3.1.1 type语法{ type: 数据类型 }3.1.2 type示例# 导包importjsonschema# 校验规则 (json语法)schema{type:object}# 数据# json_data 100# json_data 100.2# json_data hello# json_data [1, 2, 3, 4]# json_data None# json_data Truejson_data{a:1,b:2}# 调用方法resjsonschema.validate(instancejson_data,schemaschema)# 查看结果print(校验结果,res)3.2 properties关键字**说明**是 type关键字的辅助。用于 type 的值为 object 的场景。**作用**指定对象中每个字段的校验规则。 可以嵌套使用。3.2.1 properties语法语法 { type: object, properties: { 字段名1:{规则}, 字段名2:{规则}, ...... } }3.2.2 properties示例1需求1、已知JSON数据2、要求定义每个一级字段的数据类型# 导包importjsonschema# 校验规则根据测试数据写校验规则schema{type:object,properties:{success:{type:boolean},code:{type:integer},message:{type:string},money:{type:number},address:{type:null},data:{type:object},luckyNumber:{type:array}}}# 测试数据json_data{success:True,code:10000,message:操作成功,money:6.66,address:None,data:{name:tom},luckyNumber:[6,8,9]}# 调用方法校验resjsonschema.validate(instancejson_data,schemaschema)# 查看校验结果print(校验结果,res)3.2.3 properties示例2需求1、已知JSON数据2、要求定义JSON对象中包含的所有字段及数据类型# 导包importjsonschema# 校验规则schema{type:object,properties:{success:{type:boolean},code:{type:integer},message:{type:string},money:{type:number},address:{type:null},data:{type:object,properties:{name:{type:string},age:{type:integer},height:{type:number}}},luckyNumber:{type:array}}}# 测试数据json_data{success:True,code:10000,message:操作成功,money:6.66,address:None,data:{name:tom,age:18,height:1.81},luckyNumber:[6,8,9]}# 调用方法校验resjsonschema.validate(instancejson_data,schemaschema)# 查看校验结果print(校验结果,res)3.3 required关键字**作用**定义待校验的Json对象中必须存在的key。说明用于限制JSON对象中必须包含哪些key 该关键字的值是一个数组 而数组中的元素必须是字符串而且必须是唯一的3.3.1 required语法语法: { required: [字段名1, 字段名2, ...] }3.3.2 required示例需求1、已知JSON数据2、要求JSON对象中必须包含success、 code、message等字段# 导包importjsonschema# 待测数据json_data{success:True,code:10000,message:操作成功,money:6.66,address:None,data:{name:tom,age:18,height:1.81},luckyNumber:[6,8,9]}# 校验规则schema{type:object,properties:{success:{type:boolean},code:{type:integer},message:{type:string},money:{type:number},address:{type:null},data:{type:object,required:[name,age,height]},luckyNumber:{type:array},},required:[success,code,message,money,address,data,luckyNumber]}# 调用方法resjsonschema.validate(instancejson_data,schemaschema)# 查看结果print(校验结果,res)3.4 const关键字**作用**用于校验JSON元素必须等于指定的内容 。等价于 断言中 用法说明如果待校验的JSON元素的值和该关键字指定的值相同 则通过校验。否则 无法通过校验该关键字的值可以是任何值 包括null3.4.1 const语法语法: { 字段名{const: 具体值} }3.4.1 const示例# 导包importjsonschema# 待测试数据data{success:True,name:李四,height:1.93,addr:None}# 校验规则schema{type:object,properties:{success:{const:True},name:{const:李四},height:{const:1.93},addr:{const:None}}}# 调用方法resjsonschema.validate(instancedata,schemaschema)# 查看结果print(res)3.5 pattern关键字**作用**指定正则表达式对字符串进行模糊匹配正则表达式用不常用的符号排列组合从大量 字符串 数据中按指定条件 筛选 数据。基础正则举例 1 包含字符串hello 2 以字符串开头 ^: ^hello 如hello,world 3 以字符串结尾 $: hello$ 如中国,hello 4 匹配[]内任意1个字符[]: [0-9]匹配任意⼀个数字 [a-z]匹任意一个小写字母 [cjfew9823]匹配任意一个 5 匹配指定次数{}: [0-9]{11}匹配11位数字。说明0-9之间的任意数字要出现11次。 匹配手机号^[0-9]{11}$ 说明以数字开头0-9之间的任意数字要出现11次以数字结尾说明正则表达式 字符串的匹配模式包含指定字符串 pattern “指定字符串”3.5.1 pattern语法{ 字段名{pattern: 正则表达式} }3.5.2 pattern示例需求1、已知JSON数据2、校验message字段的值必须包含‘操作成功’3、校验手机号必须是11为数字# 导包importjsonschema# 测试数据data{message:操作成功!,mobile:11800000002}# 校验规则schema{type:object,properties:{message:{pattern:^操作成功},mobile:{pattern:^[0-9]{11}$}}}# 调用方法resjsonschema.validate(instancedata,schemaschema)# 查看结果print(res)四、JSON Schema综合案例 综合案例 importjsonschema data{success:False,code:10000,message:xxx登录成功,data:{age:20,name:lily}}schema{type:object,properties:{success:{type:boolean},code:{type:integer},message:{pattern:登录成功$},data:{type:object,properties:{name:{const:lily},age:{const:20}},required:[name,age]}},required:[success,code,message,data]}# 调用方法resjsonschema.validate(instancedata,schemaschema)# 查看结果print(res)
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

安徽建设通网站中国互联网上网服务行业协会

异常处理-异常概述 7.1 异常概述与异常体系结构 在使用计算机语言进行项目开发的过程中,即使程序员把代码写得尽善尽美,在系统的运行过程中仍然会遇到一些问题,因为很多问题不是靠代码能够避免的。比如:客户输入数据的格式、读取的…

张小明 2026/1/5 4:21:41 网站建设

代做网站和说明书乐亭网站建设

YOLO推理服务支持WebSocket长连接推送结果 在智能工厂的质检线上,摄像头正以每秒30帧的速度扫描着飞速流转的产品。每一个微小的划痕、错位或缺件都必须被即时捕捉,并在百毫秒内反馈给控制系统——任何延迟都可能导致数百个不良品流入下一道工序。传统的…

张小明 2026/1/9 15:47:55 网站建设

儿童影楼网站设计小学最好的网站建设

在人工智能快速发展的今天,构建私有化知识图谱系统已成为企业和个人开发者的重要需求。GraphRAG-Local-UI作为一款基于本地语言模型的知识图谱工具,为这一需求提供了完美的解决方案。本文将带您深入了解如何部署和使用这款强大的本地知识图谱系统。 【免…

张小明 2026/1/9 4:50:42 网站建设

长宁移动网站建设佛山做网站有哪几家

基于PyTorch-CUDA容器的PM2.5浓度预测实战 清晨六点,城市还未完全苏醒。窗外的空气中悬浮着肉眼难辨的微粒,而监测站的数据正在悄然攀升:PM2.5浓度已突破75μg/m。两小时后,这组数字会升至多少?学校是否该暂停户外活动…

张小明 2026/1/7 21:53:35 网站建设

泉州网站建设公司首选公司网销具体怎么做网站

如何解决 GoLand 终端控制台输出 Golang 获取请求的网页结果为乱码的问题 在使用 Golang 进行网页爬虫开发时,很多时候你会遇到乱码问题,尤其是在获取网页的内容时,终端(如 GoLand 的终端控制台)显示出来的内容无法正…

张小明 2026/1/8 10:24:55 网站建设

宁波做网站制作网站字体特效

在数字经济时代,数据已成为关键生产要素。如何实现数据的安全、可信、高效流动并释放其倍增价值,成为当前核心挑战。数据空间作为一种构建可信环境、促进数据流通的新型基础设施与生态系统,正是破解这一难题的关键所在。其核心使命在于通过系…

张小明 2026/1/11 0:35:47 网站建设