Python里的Json对决Yaml ,发现都很香

JSON文件全解析:从语法结构到Python实操与排错经验 数据交换格式是不同系统之间协作的基石,而JSON凭借极简语法和跨语言支持,成为最普及的通用标准。其核心原理是用对象与数组的嵌套组合表达任意复杂结构,并通过序列化与反序列化实现跨平台数据传递。这种轻量级特性让JSON在接口联调、配置文件管理、日志分析和自动化脚本中无处不在,几乎每个开发者每天都会与之打交道。工程实践中,JSON解析与格式化是否熟练,直接影响问题排查的效率。Python作为数据处理常用语言,其内建json模块提供了简洁的读写接口,但中文乱码、大整数精度丢失、尾随逗号等细节问题依然频繁困扰开发者。 阅读详情

摄影:产品经理

与产品经理在家里的美好时光

GNE 使用 YAML 格式来编写配置文件。

业界常常流传一个笑话,写 YAML 配置的时候,需要用游标卡尺比着屏幕来写。稍稍多一个空格少一个空格,配置文件就会报错。

我们通过 JSON 来做对比,快速学习 YAML 的语法。

注意,同一个意思,用 YAML 可能有多种写法,为了让大家快速掌握,我们只选择一种来介绍。

YAML 与 Python 一样,对缩进敏感,所以大家在写 YAML 时一定要注意缩进。并且 YAML 的缩进只能使用空格,不能使用 Tab。

一对一

对于 JSON 字符串:

{"name": "kingname", "salary": 99999, "address": "杭州"}

对应的 YAML 为:

name: kingname
salary: 99999
address: 杭州

YAML 格式不需要大括号、不需要引号。比 JSON 简洁不少。

数组

对于 JSON 字符串:

["kingname", "产品经理", "天下第一"]

对应的 YAML 为:

- kingname
- 产品经理
- 天下第一

Yaml 的列表是以-开头,并且-与正文之间有一个空格。

字典嵌套

对于 JSON 字符串:

{"info": {"basic_info": {"name": "kingname", "age": 27}, "other_info": {"address": "杭州", "salary": 99999.0}}}

对应的 YAML 为:

info:
    basic_info:
        name: kingname
        age: 27
    other_info:
        address: 杭州
        salary: 99999.0

列表嵌套

对于 JSON 字符串:

{"skill": ["Python", "Golang", "Java"]}

对应的 YAML 为:

skill:
    - Python
    - Golang
    - Java

由于列表["Python", "Golang", "Java"]是skill的值,所以他们会存在缩进。YAML 的缩进用几个空格都可以,只要每一项保持一致就行。但由于我经常写 Python,所以习惯使用4个空格作为缩进。

注释

YAML 的注释与 Python 一样,使用#号。

# 以下是基本信息
name: kingname
age: 27

# 以下是高级信息
salary: 99999
single: false
password: 1234567

兼容性

YAML 是 JSON 的超集,所以解析 YAML 的程序也能正常解析 JSON 格式。

在 Python 中,我们使用 pyyaml 来解析 Yaml 格式的字符串。安装方式如下:

pip install pyyaml

安装完成以后,使用如下命令解析 YAML:

import yaml
config = '''
title:
    xpath: //title/text()
host: https://www.xxx.com
noise_node_list:
    - //div[@class="comment-list"]
    - //*[@style="display:none"]
    - //*[@class="contheight"]
with_body_html: false
'''

config_dict = yaml.safe_load(config)

运行效果如下图所示:

这个配置文件我们可以直接改成 JSON,效果如下图所示:

可以看出,实现相同的效果,用 JSON 要写很多的中括号大括号双引号,还要考虑反斜杠的问题。

但使用 YAML,这些问题统统不是问题,可读性高得多。

菜鸟学Python小号,欢迎关注

近期热门:

十行代码,用Python做一个迷你版的美图秀秀

实战:Flask + Vue 生成漂亮的词云

Python和Go都很火,我要怎么选?

情人眼里出西施,我用Python帮你搞定了!

高手心得|菜鸟学Python从入门到进阶

漫画,假装自己是Python高手,学会这十招就可以

看了范伟和葛大爷的电影,我决定用Python做个石头剪刀布

 点击阅读原文,阅读菜鸟学Python 400篇干货!

模型生产部署实战:ONNX/PMML/JSON导出与推理服务架构 机器学习模型部署本质是将训练所得的数学契约,转化为跨平台、可验证、低开销的执行格式。理解模型导出原理,关键在于区分序列化(如pickle)与标准化表达(如ONNX、PMML、自定义JSON Schema)——前者绑定运行时环境,后者聚焦计算逻辑固化。ONNX凭借二进制图结构与广泛Runtime支持,已成为生产级推理的事实标准;PMML在强审计场景仍有价值,但面临体积膨胀与预处理脆弱性问题;而轻量JSON或FlatBuffer则在嵌入式与边缘设备中凸显可控性与极致性能优势。本文结合真实压测数据,解析三种主流导 阅读详情

相关推荐

OpenClaw 2026生产部署指南:AI智能体编排系统的运维实践

智能体编排系统是现代AI基础设施的核心组件,其本质是将大模型能力封装为可调度、可监控、可审计的服务单元。它基于分布式架构原理,通过消息队列实现任务解耦与故障隔离,依托服务发现、限流熔断和结构化追踪保障调用稳定性与内容可控性。该技术具备显著的工程价值——提升AI服务的SLA达标率、降低运维复杂度、满足金融政务等强合规场景的审计要求。典型应用场景包括SaaS自动化工作流、DevOps智能助手、多租户AI能力中台等。本文聚焦OpenClaw 2026版在真实生产环境中的部署实践,涵盖Agent Mesh架构落地、

weixin_30379531的博客 382

不用游标卡尺,Yaml 格式 5 分钟入门

点击上方“编程派”,选择设为“设为星标”优质文章,第一时间送达!作者:kingname@未闻CodeGNE 使用 YAML 格式来编写配置文件。业界常常流传一个笑话,写 YAML 配置的...

codingpy的博客 310

接口自动化框架选型:Python+Requests+Pytest+Excel+Allure实战指南

接口自动化测试是保障服务稳定性的关键环节,其核心在于构建一套高效、可维护的测试框架。在技术选型时,需要从HTTP客户端、测试执行、数据管理、报告展示等多个维度综合考量。Requests凭借简洁的Session机制成为稳定发送HTTP请求的主流选择;Pytest通过fixture与参数化特性,为用例组织与数据驱动提供了远超unittest的灵活性;Excel作为轻量级数据载体,可高效实现测试数据与脚本分离,降低团队协作成本;Allure则通过多层级报告结构,将执行结果转化为直观的业务视图。这套组合兼顾了技术门

weixin_28835789的博客 273

5分钟认识YAML

5分钟认识YAML翻译: liubin                http://www.ruby-cn.org/原文: http://yaml.kwiki.org/index.cgi?HomePage文档位置:http://www.ruby-cn.org/articles/yaml_in_5_minutes.html2004/11/11译者注:在开始之前,也许,你想先看看yam

Ruby语言 1万+

TOML配置文件全面解析:从语法到pyproject.toml实战

配置文件是软件开发中连接代码与运行环境的桥梁,其格式选择直接影响工程的可维护性与确定性。从早期INI的简单扁平,到JSON的机器友好但难手写,再到YAML的灵活却类型推断易出意外,开发者始终在寻找一种兼具清晰语法、明确类型与良好可读性的配置语言。TOML正是为解决这一痛点而生的格式,它以极简的键值对、显式类型系统和层级Table结构,在人类可写性与机器解析效率间取得平衡。在Python生态中,TOML已成为事实标准,支撑起pyproject.toml这一统一工程配置入口,整合项目元数据、构建系统与工具链参数

weixin_29237635的博客 291

pi-mono:面向生产环境的AI Agent操作系统与可装配智能体工厂

AI Agent并非简单调用大模型的函数,而是一种具备状态管理、工具编排、可观测性与可审计性的业务流程智能体。其核心原理在于将智能解耦为LLM计算资源、标准化工具契约与分层记忆架构,从而支撑高可靠、可回滚、跨角色协同的工程化落地。技术价值体现在54k+原子能力的类型安全组合、声明式工作流编排及全链路可观测性设计,广泛应用于金融风控、医疗分诊、工业预测性维护等强流程场景。本文深入解析pi-mono这一Agent操作系统如何以Process Intelligence为内核,实现从Demo到生产级AI智能体工厂的

weixin_34021089的博客 339

Python和JSON、yaml、excel、配置文件、logging

一、json格式数据和python数据的不同点 python中的列表:[];在json中叫做数组 Array python中的字典:{key:value};在json中叫做对象 object python中的布尔值:True、False;在json中的布尔值 true false python中的空值:None;在json中的空值 null json中的引号,统一使用双引号 ...

testleaf.cn 1713

PI Agent数字伴侣实战:从API接入到本地部署全指南

在人工智能技术加速落地的今天,AI Agent已成为构建个性化服务的关键载体。数字伴侣作为AI Agent的典型应用,依托大语言模型的多轮对话与角色扮演能力,通过API或本地推理实现情感陪伴与深度交互。其核心原理在于将用户设定注入系统提示词,并借助上下文管理维持人物一致性。技术价值体现在隐私可控的本地部署方案与灵活弹性的云端API调用,可满足不同显存条件下的硬件适配。应用场景覆盖智能客服、语音交互前端、内容创作辅助等,尤其适合需要长期记忆与角色稳定的对话系统。当开发者掌握基础环境配置、并发控制与记忆分层后,

427

python游标卡尺什么梗_Python这个缩进让我焦头烂额!最奇葩的缩进...

例如如下程序。运行上面代码,如果输入年龄小于20,将会看到如下运行结果。从上面代码可以看出,如果输入的年龄大于20,则程序会执行整体缩进的代码块。再次重复:Python不是格式自由的语言,因此你不能随心所欲地缩进,必须按Python语法要求缩进。下面详细介绍在缩进过程中可能导致的错误。不要忘记缩进代码块一定要缩进,否则就不是代码块。例如如下程序。上面程序的if条件与下面的print语句位于同一条竖...

weixin_39775577的博客 491

AI编排实战:MuleSoft+LangChain混合架构落地指南

AI编排(AI Orchestration)是企业实现大模型规模化落地的核心能力,本质是解决数据、系统与智能体之间的高精度连接问题。其技术原理在于分离关注点——由企业集成平台(如MuleSoft)保障协议兼容、事务一致与安全治理,由AI原生框架(如LangChain)专注上下文感知、多步推理与动态生成。这种混合架构既规避了低代码平台的黑盒不可控风险,也超越了Kubernetes编排在数据治理上的先天不足,显著提升RAG响应时效与结果可解释性。典型应用场景包括销售流失预警、供应链风险预测等需跨系统融合结构化数

diankui6178的博客 387

SpringCloud理解

微服务说白了就是把一个大的应用,按照业务功能拆分成一个个独立的小服务。每个服务都有自己的数据库、自己的代码仓库、自己的部署流程,服务之间通过 HTTP 或者 RPC 来通信。一个电商系统,单体架构就是把用户模块、商品模块、订单模块、支付模块全部写在一个项目里,打成一个 war 包部署到一台 Tomcat 上。而微服务架构呢,就是把用户、商品、订单、支付拆成四个独立的服务,每个服务都可以单独部署。对比维度单体架构微服务架构部署整体打包,牵一发而动全身每个服务独立部署,互不影响扩展。

ysct_999的博客 1593

openrig 实战:用 YAML 和 npm 装配 AI 编程工作台

在 AI 编程助手日益普及的今天,如何高效管理 Claude Code、Codex 等 CLI 工具的环境配置成为开发者面临的实际问题。声明式配置通过 YAML 文件描述目标状态,结合 npm 的分发能力,能够将零散的手动安装步骤转化为可复用、可版本控制的标准化流程。这种方案的核心价值在于降低环境搭建的复杂度,尤其适用于团队协作和多机器同步场景。无论是解决 npm 镜像源缓慢、Windows 脚本执行策略限制,还是配置第三方模型接入,一套清晰的装配方案都能显著减少重复劳动。本文围绕 openrig 项目,详

weixin_34112399的博客 247

Pi Coding Agent 隔离环境搭建:Docker Sandbox 与 pi.dockerfile 实战

Docker 容器技术通过镜像分层与命名空间隔离,为应用提供独立文件系统、依赖和网络环境,有效避免环境污染与依赖冲突。在编码智能体场景中,利用 Dockerfile 定义镜像、Compose 文件固化运行参数,可实现环境可复现与资源限制。这种方案特别适用于 Pi Coding Agent 等自主执行任务的工具,通过 pi.dockerfile 和 pi.yaml 构建沙箱,防止误操作影响宿主机,同时支持多项目并行与 CI 集成,提升开发安全性与效率。

weixin_30431445的博客 189

Qwen2.5-0.5B-Instruct实战教程:Python调用避坑指南

本文介绍了如何在星图GPU平台上自动化部署Qwen2.5-0.5B-Instruct镜像,快速构建轻量级AI服务。该模型专为低延迟、高精度指令遵循优化,典型应用场景包括结构化数据输出(如自动生成JSON/YAML)、内部工具集成及自动化脚本中的短文本生成任务,显著提升企业级AI落地效率。

weixin_35592186的博客 1068

YAML和JSON对比

1️⃣YAML是什么干什么的? YAML 是You are my love 的缩写 YAML(YAML Ain’t Markup Language),YAML 是一种简洁的非标记语言 1、YAML以数据为中心,使用空白,缩进,分行组织数据,从而使得表示更加简洁易读。 2、YAML是一种可读的文本的数据结构,它的设计目标是使人们容易读,程序容易处理。它类似XML,但是比XML简单。广泛用于配置文件,日志文件,跨语言数据共享,对象持久化,复杂的数据结构。 3、YAML 的配置文件后缀为 .yml,如.

LiBai'S BLOG 5013

GOM引擎单机传奇架设全攻略——从DBC2000配置到登录器生成

本文详细解析了使用GOM引擎架设单机传奇的完整流程,从DBC2000的安装配置、服务端部署、引擎控制器设置,到登录器生成与客户端补丁放置。文章重点解决了单机架设中的常见问题,如数据库路径配置、IP地址设置及Key.lic文件处理,旨在帮助玩家快速搭建稳定的个人游戏环境,体验GM乐趣。

weixin_28318011的博客 635

终端里的Agent Flow实战:从流程编排到稳定跑通的全记录

在自动化任务日益复杂的今天,流程编排已成为软件开发与运维中的高频需求。其核心原理在于将任务拆分为独立节点,通过调度器控制依赖关系,并以状态存储保留中间结果,从而实现可监控、可恢复的工作流。这种设计能显著提升批处理、AI Agent、定时任务等场景的稳定性与调试效率,避免了传统脚本在高耦合时易断裂的痛点。本文以终端环境下的实际项目为例,从最小演示系统到完整流水线,详细梳理了Agent Flow的架构选型、调试方法与实战经验,包括LLM节点校验、循环依赖检测和断点恢复等关键技巧,为你呈现一套务实可落地的流程编排

weixin_29056701的博客 248

百度新闻评论内容抓取

通过抓包分析发现,百家号手机app端文章评论内容接口为:https://ext.baidu.com/api/comment/v1/comment/getlist?appid=101&sid=1008524_2-1010050_1-1007549_23033-1007550_23035&cuid=01B5EAF73E8A83BB842BE04E4FB6C656|23200201047...

codingforhaifeng的博客 2422

FastAPI+ONNX模型生产部署实战:从Notebook到K8s的工程化落地

机器学习模型部署不是简单启动一个Web服务,而是涉及API设计、序列化安全、并发处理、容器化与可观测性的系统工程。FastAPI凭借异步支持、Pydantic校验和依赖注入,显著优于Flask在高并发推理场景的稳定性;ONNX格式则解决了Pickle的Python版本绑定、库兼容性与反序列化安全风险,成为跨框架、可复现、高性能的模型交付标准。结合Docker多阶段构建、Kubernetes资源约束与健康探针、Prometheus精准埋点,可构建具备SLA保障的ML服务。本文聚焦真实生产环境中的冷启动优化、浮

weixin_30514745的博客 415

以太网硬件核心:MAC、PHY、MII与交换机原理与实战排查

计算机网络通信的基础依赖于一套完整的硬件协议栈。在OSI模型中,数据链路层和物理层是实现设备间可靠、高效数据传输的基石。其核心原理在于将上层数据包封装成帧,并通过特定的介质访问控制与物理信号转换机制进行传输。这一过程的技术价值在于为上层应用提供了透明、稳定的通信信道,是互联网和所有局域网通信的物理承载。在嵌入式系统、网络设备开发及运维等应用场景中,深入理解底层硬件交互至关重要。本文将聚焦于以太网硬件的两大核心组件:负责逻辑成帧与流量控制的MAC控制器,以及负责数模转换与链路协商的PHY芯片。它们通过MII、

dgqvhtlwq472235338的博客 424

ENVI_基于无人机数据的果树提取与相对健康监测

一、数据处理 1.计算植被指数VDVI或GDVI:Band Math / Spectral Indices 2.制作掩膜:ROI——Threshold——Subset 二、单地块果树提取 1.绘制感兴趣区shp 2.确定果树提取参数:Count Crops 3.输出果树矢量文件:Convert Crops To Shapefile 4.果树相对健康程度分析:Calculate Crop Me...

提供技术服务、资源分享 429690771 1400

Pylint与Flake8实战:构建Python代码质量检查体系

在Python工程化开发中,代码质量卫士是保障可维护性的关键一环。静态检查工具通过解析源码而非运行程序,自动发现风格违规、逻辑隐患与设计缺陷,帮助团队在Code Review前拦截低层级问题。Pylint作为深度分析器,能够跨模块检查命名、复杂度、重复代码等抽象问题,并输出质量评分;Flake8则凭借轻量快速的特性,聚焦PEP8风格与明显错误,适合作为提交前的快速闸门。两者互补,共同支撑从本地编辑器到CI流水线的完整质量门禁。合理配置文件、处理误报、与Black/isort协作,可以让团队在统一的代码规范下

weixin_28829325的博客 170

零基础学习simulink-- 四旋翼和六旋翼无人机的建模与动力学分析

通过上述代码实现,您可以逐步创建和搭建一个多旋翼无人机(如四旋翼、六旋翼)的动力学模型,并结合自适应控制器进行仿真。该模型不仅考虑了无人机的基本动力学行为,还引入了空气阻力、螺旋桨之间的相互作用以及气流干扰等复杂效应,使得仿真结果更加接近实际情况。Simulink 提供了强大的建模和仿真工具,使得控制系统工程师能够快速构建复杂的控制算法,并将其应用于实际工程中。多旋翼无人机动力学建模:建立四旋翼和六旋翼无人机的动力学模型,包括平移运动和旋转运动方程。升力和扭矩模型。

amy_mhd的博客 389
上一篇: 写出一手Python烂代码的 19 条准则
下一篇: 程序员要怎么样才能脱单
菜鸟学Python
博客等级 码龄9年 8086粉丝 571原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值