【发布时间】:2016-09-05 04:26:12
【问题描述】:
我有一个 YAML 文件,我想在我的游戏中存储不同的“玩家”。
YAML 文件如下所示:
Person:
Name:
Age:
Nationality:
Footed:
Position:
创建播放器后,YAML 文件应如下所示:
Person:
Name: Rich
Age: 23
Nationality: British
Footed: Right
Position: Forward
到目前为止,我的代码是这样的:
import yaml
name = input('What is your name? ')
age = int(input('What is your age? '))
nationality = input('What is your nationality? ')
footed = input('What foot? ')
position = input('What is your position? ')
with open('test.yml', 'a') as outfile:
outfile.write(yaml.dump({'Name' : name, 'Age' : age, 'Nationality' : nationality,
'Footed' : footed, 'Position' : position}))
但是当我运行它并给用户输入时,yaml 文件最终看起来像:
{Age: 2, Footed: r, Name: r, Nationality: r, Position: r}
如何让它添加到 YAML 文件而不是追加,以及如何垂直而不是水平地构造它?最后,如果我想添加 10/20/n 个播放器,我希望 YAML 文件将它们全部存储在彼此之下,以便我可以单独调用每个播放器
【问题讨论】:
-
仅(大部分)PyYAML 支持 2005 年以来的 YAML 1.1 标准。自 2009 年以来,最新的 YAML 版本是 1.2