随笔 - 363, 文章 - 0, 评论 - 2, 阅读 - 23万
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

python中的yaml模块

Posted on   心默默言  阅读(779)  评论(0编辑  收藏  举报

python:yaml模块

 

1.yaml文件介绍

 

YAML是一种简洁的非标记语言。其以数据为中心,使用空白,缩进,分行组织数据,从而使得表示更加简洁。

  1. yaml文件规则 基本规则: 大小写敏感 使用缩进表示层级关系 缩进时不允许使用Tab键,只允许使用空格。 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可 使用#表示注释 字符串可以不用引号标注

  2. yaml文件数据结构

    对象:键值对的集合(简称 "映射或字典") 键值对用冒号 “:” 结构表示,冒号与值之间需用空格分隔 数组:一组按序排列的值(简称 "序列或列表") 数组前加有 “-” 符号,符号与值之间需用空格分隔 纯量(scalars):单个的、不可再分的值(如:字符串、bool值、整数、浮点数、时间、日期、null等) None值可用null可 ~ 表示

 

2.安装yaml

 

pip命令: pip install PyYaml

引入:import yaml

 

3.示例

 

编写yaml配置文件 yaml_example.yaml

 

name: junxi

age: 18

spouse:

name: Rui

age: 18

children:

  • name: Chen You

    age: 3

  • name: Ruo Xi

    age: 2

 

编写解析yaml文件的python程序 yaml_example.py

In [9]:
#!/usr/bin/env python

import yaml

f = open('yaml_example.yaml')

content = yaml.load(f)

print('修改前: ', content)  # 可以看出整个Yaml配置文件是一个字典, 里面可以包含字典和列表
content['age'] = 17  # 根据Key修改对应的值

content['children'][1]['age'] = 1

print('修改后: ', content)
 
修改前:  {'name': 'junxi', 'age': 18, 'spouse': {'name': 'Rui', 'age': 18}, 'children': [{'name': 'Chen You', 'age': 3}, {'name': 'Ruo Xi', 'age': 2}]}
修改后:  {'name': 'junxi', 'age': 17, 'spouse': {'name': 'Rui', 'age': 18}, 'children': [{'name': 'Chen You', 'age': 3}, {'name': 'Ruo Xi', 'age': 1}]}
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示