Code: Alles auswählen
{(1,1): "value"}
Ich möchte dieses Dictionary nun gerne serialisieren, am liebsten als json-string bei diesem Versuch hier bekomme ich aber einen TypeError:
Code: Alles auswählen
import json
print json.dumps({(1,1): "value"})
Traceback (most recent call last):
File "tsp.py", line 49, in <module>
print json.dumps({(1,1): "value"})
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/__init__.py", line 231, in dumps
return _default_encoder.encode(obj)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/encoder.py", line 201, in encode
chunks = self.iterencode(o, _one_shot=True)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/encoder.py", line 264, in iterencode
return _iterencode(o, 0)
TypeError: keys must be a string
Ist json tatsächlich so spezifiziert, dass Integer als Key nicht erlaubt sind?
Was gibt's für Alternativen, bzw. was würdet ihr machen:
- pickeln?
- jeweils die Integer als String en- und wieder decodieren?
- was ganz anderes?