Пример #1
0
 def __setitem__(self, i, v):
     if isinstance(i, str):
         r = [(ii, x) for ii, x in enumerate(self)
              if x.get('name', None) == i]
         if len(r) > 1:
             raise KeyError("There are {} elements named {}.".format(
                 len(r), i))
         elif len(r) == 0:
             self.append(v)
         else:
             CommentedSeq.__setitem__(self, r[0][0], v)
     else:
         CommentedSeq.__setitem__(self, i, v)