Ich habe ein Problem mit der Analyse von JSON-Daten in ein Diktat, das ich nicht herausfinden kann.Verwenden von json.loads in Python 2.7 gibt Unicode-Objekt anstelle von dict zurück
ich zu einem Tornado websocket von JavaScript bin verbinden und die folgenden Daten zu senden, trat in ein Textfeld:
{"action": "something"}
Die Art, wie ich es in die websocket bin das Senden ist:
sock.send(JSON.stringify($('textfield').value));
Jetzt in Python ich habe den folgenden Code in meinem WebsocketHandler :: ON_MESSAGE():
print("Message type: " + str(type(message)) + ", content: " + message)
parsed_message = json.loads(message)
print("Parsed message type: " + str(type(parsed_message)) + ", content: " + parsed_message)
Und th e Ausgabe von dieser ist:
Message type: <type 'unicode'>, content: "{\"action\":\"START_QUESTION_SELF\"}"
Parsed message type: <type 'unicode'>, content: {"action":"START_QUESTION_SELF"}
Jetzt erwarten würde ich die zweite gedruckte Nachricht ein dict
zu sein, und ich kann nicht herausfinden, warum dies nicht funktioniert. Jede Hilfe würde sehr geschätzt werden.
Leider verwenden, wenn ich falsch verstanden habe, aber Inhalte: { „action“ : "START_QUESTION_SELF"} ist eigentlich ein Diktat. –
Verwenden Sie Python2 oder 3? –
@ M.T, benutze ich Python 2.7 – Revell