【机器学习】AI大项目机器解析文件YAML语法配置

AML(YAML Ain’t Markup Language)是一种数据序列化格式,常用于配置文件。YAML 旨在易于人类阅读和编写,同时也易于机器解析和生成。YAML 的基本语法规则包括:

缩进:YAML 使用缩进来表示层级关系,不允许使用制表符(Tab)进行缩进,只能使用空格。默认缩进是两个空格,但建议在整个文件中保持一致。
键值对:YAML 中的数据以键值对(key: value)的形式组织。冒号后面必须跟一个空格。
列表:列表中的项用破折号(-)开始,且同一列表项保持相同的缩进级别。
对象/映射:键值对可以组成对象或映射,键和值之间用冒号(:)和空格分隔,对象或映射中的项以缩进表示层级。
字符串:字符串可以不加引号,但如果字符串中包含特殊字符(如冒号、空格、引号等),则需要用引号(单引号或双引号)括起来。YAML 支持多行字符串,使用 | 或 > 来定义。
注释:以 # 开头的行为注释,会被解析器忽略。
布尔值:YAML 中的布尔值可以直接用 true 或 false 表示,注意大小写。
数字:YAML 支持整数和浮点数,且无需特殊格式。
空值:使用 null 或 ~ 表示空值,建议使用 null 以保持一致性`在这里yaml

# 简单的键值对  

name: John Doe  

age: 30  

  

# 布尔值  

is_student: false  

  

# 列表  

hobbies:  

  - reading  

  - swimming  

  - coding  

  

# 对象/映射  

address:  

  street: 1234 Elm St  

  city: Springfield  

  state: IL  

  zip: 62704  

  

# 字符串  

description: "这是一个包含特殊字符的字符串: 冒号(:)和空格"  

  

# 多行字符串  

poem: |  

  There once was a man from Nantucket,  

  Who kept all his cash in a bucket,  

  But his daughter, named Nan,  

  Ran away with a man,  

  And as for the bucket, Nantucket.  

   

# 空值  

…一下是python 代码 写入YAML 文件示例…


# 创建一个字典,它代表了你想要写入YAML文件的数据

data = {

    'person': {

        'name': 'John Doe',

        'age': 30,

        'married': True,

        'children': ['Jane Doe', 'Doe Jr.'],

        'pets': None,

        'cars': [

            {'model': 'Audi A4', 'mpg': 25.5},

            {'model': 'Toyota Prius', 'mpg': 50.1}

        ]

    }

}

# 指定你想要创建的YAML文件的名称

filename = 'person.yaml'

# 使用yaml.dump()函数将字典写入文件

with open(filename, 'w') as file:
    yaml.dump(data, file, allow_unicode=True)

print(f'YAML文件 {filename} 已创建并写入数据。')

在这里插入图片描述
…机器学习解析…示例…
omegaconf 库加载yaml 文件
首选安装
pip install omegaconf


#导入库
from omegaconf import OmegaConf
# 加载配置文件
cfg = OmegaConf.load("C:\\sdd\\person.yaml")

# print(cfg)

# 访问配置数据

print(cfg.person.children)


在这里插入图片描述

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值