Return json 在 python 中 key/value 周围有双引号的字符串
Return json string having double quotes around key/value in python
我正在使用 python 3.7 版本。
我有一个 python 函数,它 returns 一个 json 字符串。即使我在双引号内有 key/value,该函数总是用单引号 returns key/value。谁能告诉我如何解决这个问题
def get_json():
return {
"id":"123",
"name":"Frank"
}
上述函数的输出是
{'id':'123', 'name':'Frank'}
我需要的是
{"id":"123", "name":"Frank"}
谁能帮我解决这个问题
你的函数没有返回 JSON 任何东西,它返回一个 Python dict 对象,并且 Python 默认打印带单引号的字符串。
如果你想要JSON,使用json.dumps
.
将数据序列化为json(通常在边缘)
在Python中,{'id':'123', 'name':'Frank'}
和{"id":"123", "name":"Frank"}
都表示相同的东西,在本例中是字典。
如果你需要字符串而不是字典,你可以转储你的数据。
import json
def get_json():
return json.dumps({
"id":"123",
"name":"Frank"
})
它returns一个字符串(不是字典)
'{"id": "123", "name": "Frank"}'
python 中的 __str__
class 负责两种情况下的字符串表示以打印您的对象。单引号和双引号都描述了对象 returned 的值。但是,您使用的是 json,遇到 return 对象时可能会遇到问题。解决方法很简单-
import json
def get_json():
return json.dumps({
"id":"123",
"name":"Frank"
})
我正在使用 python 3.7 版本。 我有一个 python 函数,它 returns 一个 json 字符串。即使我在双引号内有 key/value,该函数总是用单引号 returns key/value。谁能告诉我如何解决这个问题
def get_json():
return {
"id":"123",
"name":"Frank"
}
上述函数的输出是
{'id':'123', 'name':'Frank'}
我需要的是
{"id":"123", "name":"Frank"}
谁能帮我解决这个问题
你的函数没有返回 JSON 任何东西,它返回一个 Python dict 对象,并且 Python 默认打印带单引号的字符串。
如果你想要JSON,使用json.dumps
.
在Python中,{'id':'123', 'name':'Frank'}
和{"id":"123", "name":"Frank"}
都表示相同的东西,在本例中是字典。
如果你需要字符串而不是字典,你可以转储你的数据。
import json
def get_json():
return json.dumps({
"id":"123",
"name":"Frank"
})
它returns一个字符串(不是字典)
'{"id": "123", "name": "Frank"}'
python 中的 __str__
class 负责两种情况下的字符串表示以打印您的对象。单引号和双引号都描述了对象 returned 的值。但是,您使用的是 json,遇到 return 对象时可能会遇到问题。解决方法很简单-
import json
def get_json():
return json.dumps({
"id":"123",
"name":"Frank"
})