python with open as yaml_python怎么解析yaml文件?

首先安装PyYAML:

pip install PyYAML

然后你需要自定义tag,代码如下

import yaml

class HaHa(yaml.YAMLObject):

yaml_tag = '!haha'

def __init__(self, note):

self.note = note

def __repr__(self):

return "%s(note=%r)" % (self.__class__.__name__, self.note)

class Description(yaml.YAMLObject):

yaml_tag = '!description'

def __init__(self, age, home):

self.age = age

self.home = home

def __repr__(self):

return "%s(age=%r, home=%r)" % (

self.__class__.__name__, self.age, self.home)

获取home的值:

if __name__ == '__main__':

with open('test.yaml', 'r') as f:

yaml_data = yaml.load(f)

print(yaml_data)

print(yaml_data.get('massage').home)

输出:

{'name': 'MyName !!', 'name2': HaHa(note='name2'), 'massage': Description(age=18, home=['SH', 'BJ', 'GZ'])}

['SH', 'BJ', 'GZ']

test.yaml是你上面贴出来的数据

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值