python处理 yaml 时保持输入输出格式一致

问题

使用python 自带的 pyyaml库中,读取yaml文件修改 再输出后会有

  1. 打印 字段 乱序问题
  2. 列表格式问题在这里插入图片描述

要想保持顺序不变在 dump时添加 sort_keys=False,使yaml格式保持原来的排序

def readyaml():
    with open("../data/testdata.yaml",encoding="utf-8") as f:
        doc = list(yaml.safe_load_all(f))
 
    doc[0]["body"]["username"] = "root"
    with open("../data/testdata.yaml","w",encoding="utf-8") as f:
        yaml.safe_dump_all(doc,f,sort_keys=False)

对于 列表格式问题
在 PyYAML 库中,yaml.dump() 方法的 default_flow_style 参数用于控制输出的流风格。这个参数有以下可选项:
None:根据需要选择块风格或流风格输出。
True:强制使用流风格输出。
False:强制使用块风格输出。

即添加 default_flow_style=None 即可,默认是False

with open(yaml_out, 'w') as file:
    yaml.safe_dump(yaml_data, file,default_flow_style=None,sort_keys=False, indent=2,default_style='')

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

AI大模型火了,你的饭碗要变金饭碗还是铁饭碗?

前言 当前,AI大模型的发展正以前所未有的速度和规模推进,它们凭借其深度学习能力和海量数据训练,在诸多领域展现出了革命性的影响力。这些模型,如OpenAI的GPT系列、阿里云的通义千问等,不仅在自然语言处理上取得了显著…

惠海 H6901B升压恒流调光芯片3.7V 7.4V 12V 24V 30V 36V 48V 60V 80V 100V –光滑细腻无频闪-高端调光 太阳能照明

H6901B是一款升压型LED恒流驱动芯片,具有良好稳定性的特点。H6901B的主要特点包括宽输入电压范围(2.7V-100V)、高工作频率(1MHz)以及多种保护功能(如芯片供电欠压保护、过温保护、软启动等)。此…

Frontiers旗下期刊,23年分区表整理出炉!它还值得投吗?

本周投稿推荐 SSCI • 中科院2区,6.0-7.0(录用友好) EI • 各领域沾边均可(2天录用) CNKI • 7天录用-检索(急录友好) SCI&EI • 4区生物医学类,0.5-1.0(录用…

Ps:自动批量处理照片

有很多种方法可以将调色风格一次性应用到多张照片上。 但对于要进行局部修饰的照片,比如人像照片中要去除皮肤上的瑕疵、柔化皮肤上的光影以及均匀肤色等,想要实现成批处理似乎很困难。 随着人工智能技术的不断发展,越来越多的插件具备自动修…

小家电Type-C接口PD诱骗芯片 6500

随着科技的飞速发展,小家电设备越来越智能化,Type-C接口在小家电设备中的应用也越来越广泛。然而,由于Type-C接口的多样性,如何确保设备能够正确识别并使用各种不同的充电方式,成为了一个亟待解决的问题。这时候&#…

LVGL欢乐桌球游戏(LVGL+2D物理引擎学习案例)

LVGL欢乐桌球游戏(LVGL2D物理引擎学习案例) 视频效果: https://www.bilibili.com/video/BV1if421X7DL

直线度测量仪发展历程!

直线度测量仪的发展历程可以概括为以下几个关键阶段: 拉钢丝法: 早期直线度测量的简单直观方法,利用钢丝受重力自然下垂的原理来测量直线度误差。 随着机械设备的大型化和测量精度要求的提高,该方法逐渐无法满足要求,正…

web基础htTP协议

web基础 域名概述: 域名空间结构 网页的概念 HTML概述 DNS解析的三种方式 /etc/hosts 在Linux系统中,/etc/hosts 文件负责快速解析,它包含了IP地址与主机名的映射关系。在没有DNS服务器的情况下,可以使用本地/etc/hosts 文件完成…

比起本地渲染,渲染100网渲平台有哪些优势?渲染100邀请码1a12

渲染100是知名的网渲平台,比起本地渲染,它有以下几个优势。 1、价格低 渲染100价格便宜,15分钟2毛60分钟8毛的价格非常适合小图,一张图平均2.1元左右,非常的低了,选择渲染100可以节省成本。2、速度快 渲染…

eNSP学习——配置前缀列表

目录 主要命令 原理概述 实验目的 实验内容 实验拓扑 实验编址 实验步骤 1、基本配置 2、搭建RIP网络 3、配置ACL过滤路由 4、配置前缀列表过滤路由 5、恢复新分部网络 需要eNSP各种配置命令的点击链接自取:华为eNSP各种设备配置命令大全PDF版_ensp配置命令大全资…

苹果推出私有云计算重大隐私更新

苹果(Apple)宣布了一系列旨在增强其平台上用户隐私的更新。最新进展包括引入私有云计算,将 iPhone 强大的隐私保护扩展到苹果的云服务。 这项新功能使 Apple Intelligence 能够处理复杂的用户请求,同时保持严格的隐私标准。 苹果…

一文读懂数据中台

前言:数据中台的目标是让数据持续用起来,通过数据中台提供的工具、方法和运行机制,把数据变为一种服务能力,让数据更方便地被业务所使用。下图所示为数据中台总体架构图,数据中台是在底层存储计算平台与上层的数据应用…

【每日刷题】Day60

【每日刷题】Day60 🥕个人主页:开敲🍉 🔥所属专栏:每日刷题🍍 🌼文章目录🌼 1. 1122. 数组的相对排序 - 力扣(LeetCode) 2. 419. 甲板上的战舰 - 力扣&…

计划任务 之 一次性的计划任务

计划任务 作用:定时自动完成特定的工作 计划任务的分类: (1)一次性的计划任务 例如下周三对系统的重要文件备份一次 (2)周期性重复计划任务 例如每天晚上12:00备份一次 一次性的任务计划&#xff1a…

10_3、C++继承与派生:派生类成员访问

派生类成员访问 作用域分辨符虚基类概念及用法虚基类派生类的构造函数 赋值兼容规则 作用域分辨符 如果派生类中存在和基类中完全相同的函数,将发生同名覆盖。如果在派生类中存在一个和基类某数据成员同名的数据成员,或者和基类某成员函数的名称和参数表…

【docker实战】如何上传镜像到自己的私有仓库

上一篇文章讲了【docker实战】如何登陆到自己的私有仓库? – 经云的清净小站 (skycreator.top)。那么后面的工作就是如何上传镜像到自己的私有仓库了。 下面的操作是使用docker login命令成功之后的操作,没有login请先login。 我打算将本地的ubuntu:18…

OUO杂货铺

目录结构 文章目录 OUO杂货铺百度极速版红果免费短剧蛋花免费小说/常读免费小说有柿快手极速版快手快手/快手极速版磁力万合番茄免费小说抖音极速版头条极速版 运行环境参数说明Bug解决区优化/新增功能区异常介绍 OUO杂货铺 注意点: 1.如果手机顶部出现蓝牙标记&a…

我给KTV服务生讲解防抖,他竟然听懂了

端午节三天假期,的最后一天,我和朋友闲来无事,想着去唱会儿歌吧,好久不唱了,于是吃了午饭,石景山就近找了一家KTV,我们团好了卷就过去了。 装修还算不错,很快找到服务生&#xff0c…

北航数据结构与程序设计第五次作业选填题复习

选填题考的很多都是基础概念,对于巩固复习一些仡佬拐角的知识点是很有用的。非北航学生也可以来看看这些题,这一节主要是树方面的习题: 一、 我们首先需要知道一个公式 这是证明: 知道了这个公式,我们把题目中的数据…

MySQL常用命令(Linux环境)

一、数据定义语句(DDL) 数据库操作 ●登录数据库: mysql -uroot -proot ●创建数据库: create database test ●查看所有数据库: show databases ●选择数据库并使用: use test ●查看所有数据表: show tabl…