Pymongo:选择字段到列表而不添加要列出的字段名称

时间:2014-08-06 18:51:12

标签: python json list mongodb pymongo

我有一个集合,其中一个字段是“ip”,我想将所有IP值放在这样的列表中:

["1.1.1.1", "2.2.2.2", "3.3.3.3"]

这是我到目前为止所得到的:

result = db.ips.find({}, {"ip": 1, "_id":0}) # Cursor object
ip_list = list(result) #list
print ip_list

ip_list是一个列表,但它看起来像JSON-y,不仅包含IP,还包含字段名称:

[{u'ip': u'1.1.1.1'}, {u'ip': u'2.2.2.2'}, {u'ip': u'3.3.3.3'}]

如何只使用IP字符串获取格式?当然,我可以遍历整个列表,但我希望有更好的方法来实现它。

1 个答案:

答案 0 :(得分:2)

您应该可以使用distinct

print db.ips.distinct("ip")

或者如果您需要先过滤:

print db.ips.find(<foo>).distinct("ip")