2016-03-15 81 views
0

我努力理解什么是错的语法如下:蟒越狱美元符号

from pymongo import MongoClient 

client = MongoClient('localhost', 27017) 
db = client.monitor 
#cursor = db.monitoring_logs.find({"widget": "56dfed49a2988d9019000585;"}) 
cursor = db.monitoring_logs.find({"widget": {$in:["56dfed49a2988d9019000585;","56d58f5b1dc95f54460002f6;"]}}) 
print (cursor.count()) 

错误消息:

C:\Users\Nir.Regev\Anaconda3\python.exe C:/Users/Nir.Regev/PycharmProjects/anomaly/get_mongo_data.py 
    File "C:/Users/Nir.Regev/PycharmProjects/anomaly/get_mongo_data.py", line 6 
    cursor = db.monitoring_logs.find({"widget": {$in:["56dfed49a2988d9019000585;","56d58f5b1dc95f54460002f6;"]}}) 
               ^
SyntaxError: invalid syntax 

Process finished with exit code 1 

是美元符号($),如果是如何得到解决这个 ?

+1

尝试使用'“$ in”'代替。 – Rames

回答

3

你需要把引号的任何特殊字符串在Python(“$在”在这种情况下) - 你可能会寻找在其使用JavaScript编写的Mongo的文档,而不是pymongo客户端的文档,这是写对于Python客户端(我也这样做了;))。

from pymongo import MongoClient 

client = MongoClient('localhost', 27017) 
db = client.monitor 
#cursor = db.monitoring_logs.find({"widget": "56dfed49a2988d9019000585;"}) 
cursor = db.monitoring_logs.find({"widget": {'$in': ["56dfed49a2988d9019000585;","56d58f5b1dc95f54460002f6;"]}}) 
print (cursor.count())