簡體   English   中英

如何將字典數據加載到JSON中?

[英]How do I load a dictionary data into JSON?

這可能很簡單。 我正在玩Webhooks,我的一個測試拋出了JSON dict數據,我試圖將其復制/粘貼到終端並進行pprint。 但是我遇到了錯誤。 為什么? 請幫忙。

json.loads({"signature": {"timestamp": "1542320326", "token": "78b89c864547e371f7d708fcde9ccf3df937ce0e296cff8683", "signature": "822ae5f14a85dc25dacfd53a7ab1d55f03529aae0e8535d29758740924fde385"}, "event-data": {"tags": ["my_tag_1", "my_tag_2"], "timestamp": 1521233123.501324, "envelope": {"sending-ip": "173.193.210.33"}, "log-level": "warn", "id": "-Agny091SquKnsrW2NEKUA", "campaigns": [], "user-variables": {"my_var_1": "Mailgun Variable #1", "my-var-2": "awesome"}, "flags": {"is-test-mode": false}, "message": {"headers": {"to": "Alice <alice@example.com>", "message-id": "20110215055645.25246.63817@biennial-dot-filings.us", "from": "Bob <bob@biennial-dot-filings.us>", "subject": "Test complained webhook"}, "attachments": [], "size": 111}, "recipient": "alice@example.com", "event": "complained"}})

追溯(最近一次呼叫最近):NameError中文件“”的第1行:未定義名稱“ false”

在Python中, false不是有效的類型/表達式。 我認為您想要的是False 您可以在這里閱讀更多內容。

如@Uku所述,您可以使用json.loads()處理此問題。

Json不會直接映射到Python數據結構。

您必須改為json.loads("your string" )。 在JSON中為false ,在Python中為False

例如

json.loads('{"signature": {"timestamp": "1542320326", "token": "78b89c864547e371f7d708fcde9ccf3df937ce0e296cff8683", "signature": "822ae5f14a85dc25dacfd53a7ab1d55f03529aae0e8535d29758740924fde385"}, "event-data": {"tags": ["my_tag_1", "my_tag_2"], "timestamp": 1521233123.501324, "envelope": {"sending-ip": "173.193.210.33"}, "log-level": "warn", "id": "-Agny091SquKnsrW2NEKUA", "campaigns": [], "user-variables": {"my_var_1": "Mailgun Variable #1", "my-var-2": "awesome"}, "flags": {"is-test-mode": false}, "message": {"headers": {"to": "Alice <alice@example.com>", "message-id": "20110215055645.25246.63817@biennial-dot-filings.us", "from": "Bob <bob@biennial-dot-filings.us>", "subject": "Test complained webhook"}, "attachments": [], "size": 111}, "recipient": "alice@example.com", "event": "complained"}}')

json.loads需要一個字符串作為其參數。 為了使您將JSON對象復制到Python中的有效字符串文字中,需要用引號將其引起來。

由於JSON字符串本身包含"字符,因此您必須使用'

json.loads('{"signature": {"timestamp": "1542320326", ... }}')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM