Python替换'';加上&引用;解析json

Python替换'';加上&引用;解析json,python,json,mongodb,Python,Json,Mongodb,我目前正在尝试从mongodb服务器获取响应,然后解析json,但当我尝试解析字符串时,它返回此错误 json.decoder.JSONDecodeError:应使用双引号括起属性名:第1行第2列 下面是一个示例字符串 {'Name': 'samplename', 'email': 'email@email'} 我是否可以从mongodb数据库获得作为prober json的响应,或者是否应该将“”替换为“” x已经是一个dict;无需(尝试)将其转换为JSON,只需再次将其解析为dict f

我目前正在尝试从mongodb服务器获取响应,然后解析json,但当我尝试解析字符串时,它返回此错误

json.decoder.JSONDecodeError:应使用双引号括起属性名:第1行第2列

下面是一个示例字符串

{'Name': 'samplename', 'email': 'email@email'}
我是否可以从mongodb数据库获得作为prober json的响应,或者是否应该将“”替换为“”


x
已经是一个
dict
;无需(尝试)将其转换为JSON,只需再次将其解析为
dict

for x in mycol.find({},{ "_id": 0, "Name": 1, "email": 1 }):
    print(x["Name"])

您可以使用dumps函数

import json
# a Python object (dict):
x = {
'name': 'john',
'age': 30,
'city': 'New York'
}

# convert into JSON:
y = json.dumps(x)

# the result is a JSON string :
print(y)

从bson.json_util导入加载
,可以看到
x
已经是一个普通的
dict
;无需将其转换为
str
,然后尝试将其解析为JSON
用于x in…:print(x['Name'])
。TypeError:JSON对象必须是str、bytes或bytearray,而不是dicter,除非
x
已经是一个JSON字符串(在这种情况下,
y=str(x)
是不必要的;将
x
直接传递到
JSON.loads
),
str
不会生成JSON。这解决了将
dict
转换为JSON的问题,但这不是OP首先需要解决的问题。
import json
# a Python object (dict):
x = {
'name': 'john',
'age': 30,
'city': 'New York'
}

# convert into JSON:
y = json.dumps(x)

# the result is a JSON string :
print(y)