Je ne suis pas du tout familier avec le concept de:Python Type unhashable: « OrderedDict »
TypeError: unhashable type: 'OrderedDict'
Mais je ne peux pas comprendre comment la ligne suivante de code peut produire une telle pile trace.
89: @staticmethod
90: def diff(var1, var2, path=[], level=0, curpath=[]):
...
101: elif isinstance(var1, list) and isinstance(var2, list):
102: l1s = set(var1)
103: l2s = set(var2)
104: retlist = []
File "myFile.py", line 102, in diff
l1s = set(var1)
TypeError: unhashable type: 'OrderedDict'
Comment ligne 102
, dans le code ci-dessus jeter une telle exception?
'var1' est une liste de' OrderedDict's. –
En aparté, vous pouvez jeter un oeil à http://stackoverflow.com/questions/1132941/least-astonishment-in-python-the-mutable-default-argument – mgilson
@PavelAnossov, je me tape la tête contre mon bureau maintenant :) merci, je ne sais pas comment j'ai raté ça! – theAlse