Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将$oid转换为ObjectID时,bson.json_util.loads不一致_Python_Json_Mongodb_Unicode_Bson - Fatal编程技术网

Python 将$oid转换为ObjectID时,bson.json_util.loads不一致

Python 将$oid转换为ObjectID时,bson.json_util.loads不一致,python,json,mongodb,unicode,bson,Python,Json,Mongodb,Unicode,Bson,注意:在下面的代码示例中,我将使用bson的导入json_util作为json 我试图构建一个单元测试,模拟从MongoDB读取文档。 我没有从MongoDB读取文档,而是插入(硬代码)以下数据: {"examsFltr": unicode(json.dumps({"taggingObjects": {"$oid": "54eaed40ab5db876b8450217"}))} 当我在这一行实现json.loads时,我得到: {"examsFltr": {unicode}u'{"taggin

注意:在下面的代码示例中,我将使用bson的
导入json_util作为json

我试图构建一个单元测试,模拟从MongoDB读取文档。 我没有从MongoDB读取文档,而是插入(硬代码)以下数据:

{"examsFltr": unicode(json.dumps({"taggingObjects": {"$oid": "54eaed40ab5db876b8450217"}))}
当我在这一行实现
json.loads
时,我得到:

{"examsFltr": {unicode}u'{"taggingObjects": ObjectId("54eaed40ab5db876b8450217"))}
但当我在MongoDB文档上实现
json.loads
时,我得到:

{"examsFltr": {unicode}u'{"taggingObjects": {"$oid": "54eaed40ab5db876b8450217"}}'

我的问题是,如果同一行返回不同的结果,怎么会发生这种情况?我如何修复它?

您需要显示更多的上下文。在任何情况下,对文档调用
json.load
都不会给您一个ObjectId值。你可能在用吗?是的。我正在使用bson.json_util.load。你为什么这么问?我很乐意发送更多信息,但您能否更具体地说明相关内容@DanielRosemanI不明白你为什么认为这不相关。您声称调用
json.loads
会产生不可预测的不同结果,但事实并非如此,您使用的是两个完全不同的函数。不同的函数会产生不同的结果,这并不奇怪。@DanielRoseman我认为liad的意思是她对这两个函数都使用了json.loads,并得到了不同的结果。您需要显示更多的上下文。在任何情况下,对文档调用
json.load
都不会给您一个ObjectId值。你可能在用吗?是的。我正在使用bson.json_util.load。你为什么这么问?我很乐意发送更多信息,但您能否更具体地说明相关内容@DanielRosemanI不明白你为什么认为这不相关。您声称调用
json.loads
会产生不可预测的不同结果,但事实并非如此,您使用的是两个完全不同的函数。一个不同的函数会有不同的结果,这一点并不奇怪。@DanielRoseman我认为liad的意思是她对这两个函数都使用了json.loads,并得到了不同的结果