python YAML 多种数据格式

YAML 存储有多种显示方式,共三种:

import yaml

# import ruamel
data = {0: {"K": [1, 2, 3, 4, 5, 6], "R": [0.2, 0.3, 0.4], "id": 99, "name": "cat"},
        1: {"K": [1, 2, 3, 4, 5, 6], "R": [0.2, 0.3, 0.4], "id": 99, "name": "cat"},
        2: {"K": [1, 2, 3, 4, 5, 6], "R": [0.2, 0.3, 0.4], "id": 99, "name": "cat"}}
# 输出带括号数组格式
with open("./new3.yml", "w") as fpn:
    yaml.dump(data, fpn, default_flow_style=None)


# 加载yaml文件
#with open("./new3.yml") as fp:
#    y = yaml.load(fp)
#    print(y)


OUT:
0:
  K: [1, 2, 3, 4, 5, 6]
  R: [0.2, 0.3, 0.4]
  id: 99
  name: cat
1:
  K: [1, 2, 3, 4, 5, 6]
  R: [0.2, 0.3, 0.4]
  id: 99
  name: cat
2:
  K: [1, 2, 3, 4, 5, 6]
  R: [0.2, 0.3, 0.4]
  id: 99
  name: cat

# 输出文件是标准流格式
with open("./new3.yml", "w") as fpn:
    yaml.dump(data, fpn, default_flow_style=False)

OUT:

0:
  K:
  - 1
  - 2
  - 3
  - 4
  - 5
  - 6
  R:
  - 0.2
  - 0.3
  - 0.4
  id: 99
  name: cat
1:
  K:
  - 1
  - 2
  - 3
  - 4
  - 5
  - 6
  R:
  - 0.2
  - 0.3
  - 0.4
  id: 99
  name: cat
2:
  K:
  - 1
  - 2
  - 3
  - 4
  - 5
  - 6
  R:
  - 0.2
  - 0.3
  - 0.4
  id: 99
  name: cat

# 输出文件内容还是json格式
with open("./new3.yml", "w") as fpn:
    yaml.dump(data, fpn, default_flow_style=True)

OUT:

{0: {K: [1, 2, 3, 4, 5, 6], R: [0.2, 0.3, 0.4], id: 99, name: cat}, 1: {K: [1, 2,
      3, 4, 5, 6], R: [0.2, 0.3, 0.4], id: 99, name: cat}, 2: {K: [1, 2, 3, 4, 5,
      6], R: [0.2, 0.3, 0.4], id: 99, name: cat}}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值