如何用python解析yaml字符串?

时间:2018-05-05 05:40:47

标签: python python-3.x yaml python-2.x

我看到一个API和很多关于如何解析yaml文件的例子但是字符串怎么样?

2 个答案:

答案 0 :(得分:2)

这是一个在自包含示例中执行此操作的函数:

import yaml
try:
    from StringIO import StringIO
except ImportError:
    from io import StringIO

def parse_yaml_string(ys):
    fd = StringIO(ys)
    dct = yaml.load(fd)
    return dct

dct = parse_yaml_string('''
name: John
age: 30
''')
assert dct['name'] == 'John'
assert dct['age'] == 30

答案 1 :(得分:0)

您不需要将字符串包装在StringIO中,safe_load方法接受字符串:

In [1]: yaml.safe_load("{1: 2}")           
Out[1]: {1: 2}