2
J'utilise yaml.safe_load()
mais j'ai besoin d'ignorer une balise !v2
- y at-il un moyen de le faire mais toujours utiliser safe_load()
?pyyaml safe_load: comment ignorer les balises locales
J'utilise yaml.safe_load()
mais j'ai besoin d'ignorer une balise !v2
- y at-il un moyen de le faire mais toujours utiliser safe_load()
?pyyaml safe_load: comment ignorer les balises locales
I figured it out, il est lié à How can I add a python tuple to a YAML file using pyYAML?
Je dois juste faire:
yaml.SafeLoader
add_constructor
d'attribuer !v2
à une méthode de construction personnaliséeyaml.load(..., MyLoaderClass)
au lieu de yaml.safe_load(...)
et cela fonctionne.
class V2Loader(yaml.SafeLoader):
def let_v2_through(self, node):
return self.construct_mapping(node)
V2Loader.add_constructor(
u'!v2',
V2Loader.let_v2_through)
....
y = yaml.load(info, Loader=V2Loader)
Voir également http://stackoverflow.com/a/13281292/165629 si vous souhaitez simplement ignorer ou ignorer un tag. –