- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有兴趣打印一系列查询。我有以下代码。
start = datetime.datetime(2012, 2, 2, 6, 35, 6, 764)
end = datetime.datetime(2012, 2, 2, 6, 55, 3, 381)
for doc in db.model.find({'time': {'$gte': start, '$lt': end}}):
print doc
它完成了这项工作,基本上打印出我是如何插入数据的。
我的问题是:
是否可以打印出整个查询的一个元素?例如,我希望它只打印项目或日期或插入的另一个输入,而不是给我 {'time': datetime.datime(....), 'input1': ..., 'item': 。 ..}。否则,如果我必须重新解析我已经解析过的 mongodb 查询数据以放入 mongodb,那将大大减慢我的程序。
Cảm ơn.
1 Câu trả lời
让我们了解一些有关 pymongo 工作原理的基础知识。
假设您在 Mongo 中有一些包含插入数据的集合。您希望通过查询从该集合中获取数据:
cursor = db.model.find({'time': {'$gte': start, '$lt': end}})
“model” 集合对象的方法查找返回 Cursor
对象:一个包含有关查询和查询结果的所有信息的实体。
这样查询就完成了,接下来就是获取结果了。 Mongo 查询的结果类型可能因方法而异。在我们的例子中(tìm thấy
方法)- 结果是一堆 JSON 对象(迭代器对象),它们中的每一个都由 Python 语言中的 dict
类型表示。这意味着您不必解析结果:它们已经被解析成字典.
Về Cursor
的另一件事:它是惰性的。这意味着您可以按需收到结果。对于 Cursor
对象,您必须遍历它以获取通过查询获取的对象:
for result_object in cursor:
print result_object # result_object is a dict that holds JSON object
result_object['_id'] # Mongo ObjectId of the result_object
# result_object[""] # Value stored in a field named
一般来说,你必须尝试阅读Pymongo Tutorial : 它很短,给出了整个驱动程序如何工作的方向。
关于python - MongoDB - 打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11958195/
Tôi đang xử lý một tập hợp gồm 173 nghìn điểm được dán nhãn thành 160 nhóm. Tôi muốn giảm số lượng nhóm/cụm bằng cách sáp nhập những nhóm/cụm gần nhất (còn 9 hoặc 10 nhóm). Tôi đã tìm kiếm sklearn hoặc các thư viện tương tự nhưng không thành công. Tôi đoán nó chỉ là sự nhóm lại thông qua knn
Tôi có một danh sách phẳng các số được nhóm hợp lý thành các nhóm 3, trong đó mỗi bộ ba là (số, __bỏ qua, cờ[0 hoặc 1]), ví dụ: [7,56,1, 8,0,0, 2,0,0, 6,1,
Tôi đang sử dụng pipenv để quản lý các gói của mình. Tôi muốn viết một tập lệnh python để gọi một tập lệnh python khác sử dụng môi trường ảo (VE) khác. Cách chạy một tập lệnh python bằng VE1 và gọi một tập lệnh khác
Giả sử tôi có một tệp script.py nằm ở đường dẫn = "foo/bar/script.py". Tôi đang tìm cách thực thi các tập lệnh trong Python từ Python chính của tôi
Điều này nghe có vẻ giống như một câu đố hay một trò đùa, nhưng thực ra tôi vẫn chưa tìm ra câu trả lời cho câu hỏi này. Vấn đề thực sự là gì? Tôi muốn chạy 2 tập lệnh. Trong tập lệnh đầu tiên, tôi gọi tập lệnh kia, nhưng tôi muốn chúng tiếp tục song song, chứ không phải thành hai luồng riêng biệt. Chủ yếu là tôi không muốn
Tôi có một phần mềm sử dụng python 2.5.5. Tôi muốn gửi lệnh để bắt đầu một tập lệnh trong python 2.7.5 và sau đó tiếp tục thực thi tập lệnh đó. Tôi đã thử sử dụng #!python2.7.5 và http://re
Tôi đang ở dòng lệnh python (sử dụng python 2.7) và đang cố gắng chạy một tập lệnh Python. Hệ điều hành của tôi là Windows 7. Tôi đã thiết lập thư mục của mình thành thư mục chứa tất cả các tập lệnh của tôi bằng cách sử dụng: os.chdir("
Spoiler: Đã giải quyết một phần (xem phần cuối). Sau đây là một ví dụ mã sử dụng nhúng Python: #include int main(int argc, char** argv) { Py_SetPythonHome
Giả sử tôi có danh sách sau, tương ứng với giá cổ phiếu theo thời gian thực: giá = [1, 3, 7, 10, 9, 8, 5, 3, 6, 8, 12, 9, 6, 10, 13, 8, 4, 11] Tôi muốn xác định giá trị tốt nhất tổng thể sau đây
Vì vậy, tôi đang cố gắng thay đổi hình nền của khung này khi một nút radio nào đó được chọn. Khung của tôi nằm bên trong một lớp và chức năng của các nút radio nằm bên ngoài lớp đó. (Để tôi có thể gọi chúng trên tất cả các khung khác.) Vấn đề là bất cứ khi nào tôi chọn một nút radio, tôi nhận được lỗi sau:
Tôi đang cố gắng so sánh một chuỗi với một biểu thức chính quy trong python như sau, #!/usr/bin/env python3 import re str1 = "Expecting property name
Hãy xem xét mô-đun Boost.Python nguyên mẫu sau đây nhập lớp "D" từ một tệp tiêu đề C++ riêng biệt. /* tập tin: a/b.cpp */ BOOST_PYTHON_MODULE(c)
Làm thế nào để viết một chương trình để "xác định số dòng của lệnh gọi hàm?" Mô-đun kiểm tra của Python cung cấp tùy chọn để xác định vị trí số dòng, tuy nhiên, def di(): return inspect.currentframe().f_back.f_l
Tôi đã cài đặt Python 2.7 bằng macports và do biến $PATH của tôi nên đây là những gì tôi nhận được khi nhập $ python. Tuy nhiên, virtualenv sử dụng Python 2.6 theo mặc định, ngoại trừ
Tôi chỉ muốn hỏi làm thế nào để tăng tốc độ tìm kiếm trên python. Tôi có một chuỗi ký tự rất dài, dài 176861 (tức là các ký tự chữ và số có một số ký hiệu) mà tôi đã thử nghiệm cho mục đích nghiên cứu bằng cách sử dụng hàm này: def getExe
list1 = [u'%app%%General%%%Council%', u'%people%', u'%people%%Regional%%%Council%%Mandate%', u'%ppp%%Ge
Câu hỏi này đã có câu trả lời tại đây: Có phải Pythonic sử dụng danh sách hiểu biết chỉ cho các tác dụng phụ không? (7 câu trả lời) Đã đóng 4 tháng trước. kể
Tôi muốn kết hợp hai danh sách thành một danh sách trong Python như sau: a = [1,1,1,2,2,2,3,3,3,3] b = ["Sun", "is", "bright", "June","and" ,"Ju
Tôi đang chạy Mac OS X 10.8.4 (Darwin 12.4.0) với bản phân phối Boost mới nhất (1.55.0). Tôi đang làm theo hướng dẫn ở đây để xây dựng hướng dẫn Boost-Pyth có trong bản phân phối của tôi
Tôi đang học Python và đang cố gắng tạo một trình thu thập dữ liệu web mà không cần bất kỳ thư viện của bên thứ 3 nào nên quy trình không được đơn giản hóa đối với tôi và tôi biết mình đang làm gì. Tôi đã tìm kiếm một số tài liệu trực tuyến nhưng tất cả đều khiến tôi bối rối về một điều gì đó. html trông giống như
Tôi là một lập trình viên xuất sắc, rất giỏi!