開発環境
- OS X Yosemite - Apple (OS)
- Emacs(Text Editor)
- Python 3.4 (プログラミング言語)
MongoDBイン・アクション (Kyle Banker (著)、Sky株式会社 玉川 竜司 (翻訳)、オライリージャパン)のⅠ部(初めてのMongoDB)、3章(MongoDBを使ったプログラムの作成)、3.2(ドライバの動作)、3.2.1(オブジェクトIDの生成)を Python で考えてみる。
コード(Emacs)
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import pymongo
import bson
import datetime
id = bson.ObjectId()
print(id.generation_time)
client = pymongo.MongoClient()
db = client['tutorial']
users = db['users']
gen_time1 = datetime.datetime(2015,9, 9)
gen_time2 = datetime.datetime(2015, 9, 10)
id1 = bson.ObjectId.from_datetime(gen_time1)
id2 = bson.ObjectId.from_datetime(gen_time2)
cursor = users.find({'_id': {'$gte': id1, '$lte': id2}})
for doc in cursor:
print(doc)
入出力結果(Terminal, IPython)
$ ./sample2_1.py 2015-09-11 06:10:17+00:00 {'_id': ObjectId('55efd453a54d75196e8762cc'), 'age': 30, 'last_name': 'smith'} {'_id': ObjectId('55efd453a54d75196e8762cd'), 'age': 40, 'last_name': 'jones'} {'_id': ObjectId('55efd456a54d751971422856'), 'last_name': 'smith', 'age': 30} {'_id': ObjectId('55efd456a54d751971422857'), 'last_name': 'jones', 'age': 40} {'_id': ObjectId('55efd457a54d751973dcc6e5'), 'last_name': 'smith', 'age': 30} {'_id': ObjectId('55efd457a54d751973dcc6e6'), 'last_name': 'jones', 'age': 40} {'_id': ObjectId('55efd457a54d7519747322ee'), 'age': 30, 'last_name': 'smith'} {'_id': ObjectId('55efd457a54d7519747322ef'), 'age': 40, 'last_name': 'jones'} {'_id': ObjectId('55efd458a54d75197540a4d7'), 'last_name': 'smith', 'age': 30} {'_id': ObjectId('55efd458a54d75197540a4d8'), 'last_name': 'jones', 'age': 40} $
0 コメント:
コメントを投稿