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

5分钟搞定Kalibr标定板生成:从PDF到PNG的完整流程(附避坑指南) 本文详细介绍了如何快速生成Kalibr标定板,并完成从PDF到高质量PNG图像的完整转换流程。重点解析了Aprilgrid标定板的参数设置、高分辨率图像转换的技术细节,并提供了打印制作与配置文件编写的避坑指南,旨在帮助机器人视觉开发者高效、准确地完成相机标定前的准备工作。 阅读详情

点击上方“编程派”,选择设为“设为星标”

优质文章,第一时间送达!

作者:kingname@未闻Code

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,这些问题统统不是问题,可读性高得多。

回复下方「关键词」,获取优质资源

回复关键词「 pybook03」,立即获取主页君与小伙伴一起翻译的《Think Python 2e》电子版

回复关键词「入门资料」,立即获取主页君整理的 10 本 Python 入门书的电子版

回复关键词「m」,立即获取Python精选优质文章合集

回复关键词「book 数字」,将数字替换成 0 及以上数字,有惊喜好礼哦~

题图:pexels,CC0 授权。

好文章,我在看❤️

树莓派5+Hailo AI Hat部署YOLOv5实战指南 边缘AI推理是指在终端设备上直接运行深度学习模型,无需依赖云端,其核心在于硬件加速与轻量化模型的协同优化。Hailo-8芯片采用专用数据流架构,针对卷积、BN和激活函数等CV算子深度优化,相比GPU通用计算显著降低功耗与延迟。YOLOv5因其结构简洁、ONNX兼容性好、编译确定性强,成为Hailo平台首选目标检测模型。在树莓派5等资源受限设备上,结合Docker容器隔离训练与编译环境,可有效规避CUDA版本冲突与依赖污染问题。本文聚焦YOLOv5在Hailo AI Hat+上的端到端落地,涵盖数据预处理、迁 阅读详情

相关推荐

Claude Sonnet 4.5的道德逻辑:Agentic Coding工程化实践

Agentic Coding(智能代理编程)正从概念走向生产落地,其核心挑战并非模型能力上限,而是决策过程的可控性、可追溯性与安全性。‘道德逻辑’在此语境下并非哲学抽象,而是指代一套可嵌入系统、可版本管理、可自动化校验的工程约束机制,涵盖意图保真、责任绑定、因果归因与变更边界控制。Claude Sonnet 4.5凭借高响应确定性、低上下文衰减率与强结构化输出能力,成为实现该逻辑的理想载体——它不追求炫技式生成,而专注在约束内交付稳定、可验证、可审计的代码决策。本文基于17个真实生产项目复盘,详解如何将‘道

aijia7039的博客 381

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万+

Autobot新手建图入门:Karto激光SLAM实战指南

激光SLAM是移动机器人自主导航的基础技术,其核心在于通过激光雷达点云实现帧间位姿估计与地图构建。Karto作为轻量级前端SLAM方案,采用扫描匹配+关键帧机制,不依赖IMU或深度相机,具备强可观测性与低调试门槛。相比Gmapping和Cartographer,Karto参数直观、失败归因明确,特别适合RPLIDAR A1/A3等低成本激光雷达在Jetson Nano等嵌入式平台的快速验证。本文围绕Autobot硬件平台,详解Karto在TF坐标系适配、Scan消息滤波、关键帧阈值设定及内存优化等方面的工程

weixin_34342905的博客 376

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

1350元入门具身智能:SO-100+ROS2+lerobot教学沙盒

具身智能是AI与物理世界交互的核心范式,其本质是感知、决策与执行的闭环系统。理解ROS2中间件架构、机械臂运动学建模及多模态感知融合,是掌握该领域的基础原理。技术价值在于降低硬件门槛与工程复杂度,使教学、原型验证和岗位能力训练成为可能。典型应用场景覆盖高校机器人课程、AI工程师转岗实践、中小学科创项目及轻量级工业分拣算法预研。本方案以SO-100六轴机械臂为载体,深度集成lerobot训练框架与ROS2 Humble生态,提供从Gazebo仿真到真实抓取的端到端可复现路径,兼顾精度、成本与教学友好性。

weixin_33743880的博客 553

Promptfoo:LLM提示词自动化测试与质量门禁实战指南

大语言模型(LLM)应用开发面临的核心挑战在于输出不可控、验收无标准、上线易翻车。Promptfoo作为轻量级命令行LLM测试引擎,通过分层断言体系(确定性校验、LLM辅助评分、Python自定义逻辑),将模糊的‘感觉对不对’转化为可重复、可量化的pass/fail结果。它不替换模型也不修改提示词,而是以配置即代码的方式,在本地或CI中驱动真实API调用,实现提示词变更、模型切换、多场景覆盖的全链路质量守门。尤其适合需要快速落地、兼顾安全合规与工程化交付的AI应用团队,是当前LLM测试领域最具生产就绪度的最

coolmsn8786的博客 480

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

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

weixin_39775577的博客 491

Agentic Workflow实战入门:目标驱动的AI工作流设计

Agentic Workflow(智能体工作流)是一种以目标为导向、支持自主规划与工具调用的新型AI协作范式,区别于传统线性脚本的确定性执行逻辑。其核心在于将任务拆解为可验证的原子目标,通过契约化工具接口实现可靠调用,并构建多层失败回滚机制保障健壮性。该范式显著提升AI在复杂业务场景中的自主决策能力与容错水平,广泛应用于客服工单分类、库存预警、跨系统数据协同等需要‘无人值守仍可靠执行’的关键环节。本文聚焦Agentic Workflow的设计原理与落地实践,深入解析目标分解、工具调度与状态管理三大支柱。

weixin_30788239的博客 362

python游标卡尺什么梗

因为 python 是通过缩进来区分代码块的(而不是{}或者是其他符号),而不是像其他程序语言,缩进仅仅为了可读性。导致打印出来的 python 代码(比如书),需要肉眼看缩进,有时候遇上翻页,或者代码逻辑比较复杂,缩进比较多时,就需要用尺子来区分代码块了,如果看书不带游标卡尺的话,你就不知道缩进了几层,当然是个夸张的说法。python游标卡尺什么梗?

hakesashou的博客 1575

2026年AI编程工具实战选型指南:TRAE、通义灵码、CodeBuddy与Copilot深度对比

AI编程助手已从基础代码补全演进为影响研发效能、安全合规与系统稳定性的核心基础设施。其底层依赖大语言模型的上下文理解能力、本地化推理支持、企业级知识集成及可编程技能编排等关键技术维度。TRAE强调本地可控与工作流解耦,通义灵码聚焦企业知识中枢但免费版存在隐性降级,CodeBuddy以Skills驱动任务自动化却生态脆弱,GitHub Copilot则提供开箱即用的稳定性但缺乏深度定制能力。在金融信创、政务等保、IoT固件等强合规场景下,工具链需兼顾模型自主性、数据不出域与CI/CD无缝集成。本文基于真实项目

weixin_30394981的博客 410

从零实践:基于TartanCalib与Kalibr的单目相机标定全流程解析

本文详细解析了基于TartanCalib与Kalibr的单目相机标定全流程,从环境搭建、数据采集到参数配置与结果分析。通过实战案例和常见问题排查,帮助开发者快速掌握相机标定技术,提升计算机视觉算法的准确性。特别适合需要高精度标定的无人机、机器人导航等应用场景。

weixin_28834765的博客 153

EAI F4激光雷达+ROS2 Slam Toolbox实现低成本SLAM建图与导航

SLAM(同步定位与地图构建)是移动机器人自主导航的核心基础技术,其原理在于融合传感器数据与运动模型,实时估计位姿并构建环境地图。该技术具备高鲁棒性、低依赖硬件标定、无需GPU加速等工程优势,广泛应用于服务机器人、巡检底盘、教育套件及室内AGV等场景。本文聚焦于国产EAI F4固态激光雷达与ROS2 Humble生态的深度适配,详解slam_toolbox替代Gmapping/Cartographer的实操逻辑,并结合真实硬件标定、USB通信陷阱、costmap调参等关键环节,提供从零部署稳定建图与nav2

weixin_30258901的博客 402

DeepSeek V4基础设施深度解析:云原生模型服务编排

大模型推理服务正从单体部署迈向云原生服务编排——这一范式迁移的核心在于将模型封装为具备声明式契约、可观测性与自动扩缩容能力的Kubernetes原生服务单元。其技术原理依托于配置覆盖(Config Override)、模型注册中心(model-registry)与可插拔网关路由等关键机制,显著提升AI服务的交付一致性、环境隔离性与运维成熟度。该架构不仅支撑VS Code、Cursor等IDE工具对DeepSeek V4的无缝接入,更使local deployment deepseek、deepseek v4

weixin_33709609的博客 325

统计+机器学习+LLM三明治架构:构建可解释可落地的数据决策流水线

在AI工程化落地中,‘可解释性’与‘业务可用性’正成为核心瓶颈。统计学提供因果推断基础与不确定性量化能力,机器学习擅长从结构化洞见中挖掘非线性模式,而大语言模型则承担自然语言接口角色——将置信区间、效应量、反事实预测等专业输出,转化为业务方能理解、可执行的决策指令。本文聚焦‘统计为基座、ML为引擎、LLM为接口’的嵌套式架构设计,强调跳过混杂因子控制、禁用原始数据直通、限定LLM仅作数值翻译等关键实践,解决黑箱归因、幻觉解释、人工搬运衰减等行业共性难题,适用于电商归因、设备预警、风控解释等高可信要求场景。

weixin_30847939的博客 423

KEDA+Prometheus实现AMD GPU弹性扩缩容实战

GPU弹性扩缩容是AI推理服务应对流量峰谷的核心能力,其本质是将业务压力信号(如请求队列、GPU利用率)转化为容器实例数量的动态调整。传统HPA依赖CPU/内存等底层资源指标,难以捕捉ROCm运行时的显存争抢、内核调度延迟等真实瓶颈;而KEDA作为事件驱动型扩缩容引擎,通过监听Prometheus中自定义的GPU指标(如fun_asr_gpu_utilization)或业务队列长度,实现毫秒级扩容响应。该方案在DOKS托管Kubernetes上深度适配AMD Instinct MI250X/MI300系列,

weixin_34408717的博客 348

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

ROS工程实战课:产线级故障诊断与系统稳定性保障

ROS(Robot Operating System)作为机器人开发的事实标准,其核心价值不仅在于模块化通信架构,更体现在真实硬件环境下的鲁棒性与可诊断性。理解ROS底层原理——如节点生命周期管理、参数服务器同步机制、TF坐标系时间一致性及跨设备时钟漂移影响——是构建稳定系统的前提。技术价值在于将抽象概念转化为可测量、可审计、可回滚的工程实践,支撑AGV调度、SLAM建图、自主导航等关键场景。本文聚焦ROS在工业现场的真实运行逻辑,深入解析tf坐标系断裂、topic通信黑洞、launch契约失效等27类高频

weixin_34258838的博客 387

大疆无人机图像传输延时优化全解析:从Lightbridge到OcuSync的实战技巧

本文深入解析大疆无人机图像传输延时优化,对比Lightbridge与OcuSync两大核心通信协议的技术差异与实战表现。文章详细拆解了从传感器采集到屏幕显示的完整延时链条,并提供了从环境频段选择、硬件升级到软件设置的全方位优化技巧,帮助飞手与开发者显著降低图传延时,提升操控体验与作业效率。

weixin_29163857的博客 306

2025年AI应用开发实战指南:模型选型、推理成本与边缘部署

AI应用开发已从‘大模型崇拜’进入工程化落地深水区。理解模型的底层原理——如多模态对齐机制、RAG作为决策神经系统、硬件感知型压缩技术——是规避幻觉、延迟与成本失控的前提。技术价值体现在可测量的SLO保障:低至毫秒级边缘响应、800ms内图文联合推理、金融场景92%以上的条款引用准确率。典型应用场景覆盖智能客服方言摘要、工业质检实时诊断、法律合同条款锚定审查等真实业务闭环。本文聚焦2025年开发者最常面对的六大主力模型,结合实测吞吐量、中文长文本错字率与推理成本,提供可直接复用的选型框架与避坑清单。

cunbei2644的博客 455

论文必备 - YOLOv13热力图可视化,支持指定模型,指定显示层,设置置信度,以及10种可视化实现方式

本文带来的是YOLOv13热力图可视化功能,支持,以及。我们经常看到一些论文里绘制了不同的热力图,一方面能够直观的感受其模型的有效性,另一方面也丰富了论文内容。特别是在使用了注意力模块的网络中,热力图就可以验证注意力机制是否真正聚焦到了预期的重要特征上,以便对模型的有效性和合理性进行评估。例如这篇文章中展示的,就很能够表达作者改进后的模型相比之前模型的优越性。

Limiiiing的博客 489

21天教你学会PCIe专栏(17)--多功能设备

1.1 定义多功能PCIe设备:多功能PCIe设备是指在一个物理设备中集成了多种功能的设备。这些功能可以通过不同的PCIe功能(Function)来实现,每个功能可以独立配置和管理。1.2 优点资源利用率:通过集成多种功能,减少物理设备的数量,提高资源利用率。成本效益:减少硬件成本和功耗,提高系统的经济性。灵活性:用户可以根据需要启用或禁用不同的功能,提高系统的灵活性。可扩展性:通过增加新的功能,扩展设备的功能,提高系统的可扩展性。1.3 应用场景网络设备。

xiaoheshang_123的博客 531
上一篇: Github 热门,程序员想拿高薪建议都看看
下一篇: Python 会被 Go 取代吗?
codingpy
博客等级 码龄11年 1873粉丝 104原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值