2015-10-09 1 views

Répondre

1

I figured it out, il est lié à How can I add a python tuple to a YAML file using pyYAML?

Je dois juste faire:

  • sous-classe yaml.SafeLoader
  • appel add_constructor d'attribuer !v2 à une méthode de construction personnalisée
  • dans la méthode de construction personnalisée, faire ce qui est approprié
  • utiliser yaml.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) 
+0

Voir également http://stackoverflow.com/a/13281292/165629 si vous souhaitez simplement ignorer ou ignorer un tag. –