Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.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 如何在pymongo中从列表中查询元素_Python_Search_Pymongo - Fatal编程技术网

Python 如何在pymongo中从列表中查询元素

Python 如何在pymongo中从列表中查询元素,python,search,pymongo,Python,Search,Pymongo,pymongo在尝试从标记查询元素时抛出错误 db.users.find({"pseudo":"alucaard"}).distinct("produit_up") Out[1]: [{u'abus': 0, u'avctype': u'image/jpeg', u'date': u'2012-09-15', u'description': u'le fameux portable solide', u'id': u'alucaard134766932677', u'nam

pymongo
在尝试从
标记查询元素时抛出错误

db.users.find({"pseudo":"alucaard"}).distinct("produit_up")
Out[1]: 
[{u'abus': 0,
  u'avctype': u'image/jpeg',
  u'date': u'2012-09-15',
  u'description': u'le fameux portable solide',
  u'id': u'alucaard134766932677',
  u'namep': u'nokia 3310',
  u'nombre': 1,
  u'orientation': u'portrait',
  u'photo': ObjectId('5053cd4e3a5f3a0990da8a61'),
  u'prix': 1000,
  u'tags': [u'solide', u'le', u'fameux', u'portable'],
  u'vendu': False}]

list(db.users.find({"solide":{"$in":{"document_up.tags"}}}))

Traceback (most recent call last):
 File "C:\Python27\lib\site-packages\IPython\core\interactiveshell.py", line 2746, in  run_code exec code_obj in self.user_global_ns, self.user_ns
File "<ipython-input-1-8dff98261d7a>", line 1, in <module>
list(db.users.find({"solide":{"$in":{"document_up.tags"}}}))
File "C:\Python27\lib\site-packages\pymongo\cursor.py", line 778, in next
if len(self.__data) or self._refresh():
File "C:\Python27\lib\site-packages\pymongo\cursor.py", line 729, in _refresh
self.__uuid_subtype))
InvalidDocument: Cannot encode object: set(['document_up.tags'])
  • 第一步:删除逗号或点以避免正则表达式搜索
  • 其次,使用
    phrase.split()
    拆分单词
  • 将此项添加到
    集合
    ,以避免重复单词
  • 将集合转换为
    列表
  • 制作一个包含一些将从列表中删除的单词的词汇表是一个好主意,如“如何”、“你”、“我”。。。但这需要进行大量的计算

  • 希望这个想法能有所帮助。

    你的疑问是错误的。尝试更接近于:

    list(db.users.find({"document_up.tags":{"$in":["solide"]}}))
    

    原来是相反的?!因为在逻辑上,如果一个单词在一个列表中,我们就搜索它,如果它在一个单词中,我们就搜索它,而不是一个列表?@Abdelouahapp事实上在Mongo中,它很像SQL,在(1,2,3)中有
    字段名
    很抱歉,因为我直接“跳”到了nosql,没有得到SQL步骤:p谢谢again@AbdelouahabPpNP开始学习的最佳地点是:)
    
    list(db.users.find({"document_up.tags":{"$in":["solide"]}}))