[解決済み] pymongo.cursor.Cursorをdictに変換するには?
質問
pymongoを使って、ある地域のすべてのアイテムを検索しています(実際には、ある地域のすべての会場を地図上で検索しています)。私は
db.command(SON())
というキーがあり、そのキーに対応した辞書を返します。
results
というキーがあり、そこに会場が含まれています。今、私は正方形の領域で検索する必要があり、私は使用することをお勧めします。
db.places.find
を使用するよう提案されましたが、これは私に
pymongo.cursor.Cursor
クラスが返され、そこから会場の結果を抽出する方法がわかりません。
カーソルをdictに変換して結果を取り出すべきか、それとも四角い領域のアイテムを照会する別の方法を使用すべきか、誰か知っていますか? ちなみに、dbはpymongo.database.Databaseクラスです。
コードは
>>> import pymongo
>>> db = pymongo.MongoClient(host).PSRC
>>> resp = db.places.find({"loc": {"$within": {"$box": [[ll_lng,ll_lat], [ur_lng,ur_lat]]}}})
>>> for doc in resp:
>>> print(doc)
私はll_lng、ll_lat、ur_lng、ur_latの値を持って、これらの値を使用しますが、それはこのコードから何も表示されません。
どのように解決するには?
この
find
メソッドは
Cursor
のインスタンスを返すので、マッチする全てのドキュメントを繰り返し見ることができます。
与えられた条件にマッチする最初のドキュメントを取得するためには
find_one
. の結果は
find_one
は辞書です。
は常に
list
コンストラクタを使用することもできますが、これはメモリ上にあるすべてのデータを読み込むことになり、 望むものにはならないかもしれないことを心に留めておいてください。
カーソルを再利用する必要がある場合、そして
rewind()
を使ったデモ
find
:
>>> import pymongo
>>> conn = pymongo.MongoClient()
>>> db = conn.test #test is my database
>>> col = db.spam #Here spam is my collection
>>> cur = col.find()
>>> cur
<pymongo.cursor.Cursor object at 0xb6d447ec>
>>> for doc in cur:
... print(doc) # or do something with the document
...
{'a': 1, '_id': ObjectId('54ff30faadd8f30feb90268f'), 'b': 2}
{'a': 1, 'c': 3, '_id': ObjectId('54ff32a2add8f30feb902690'), 'b': 2}
を使ったデモ
find_one
:
>>> col.find_one()
{'a': 1, '_id': ObjectId('54ff30faadd8f30feb90268f'), 'b': 2}
関連
-
[解決済み] プログラムの実行やシステムコマンドの呼び出しはどのように行うのですか?
-
[解決済み] Java Mapの各エントリを効率的に反復処理するには?
-
[解決済み] 辞書を値で並べ替えるにはどうしたらいいですか?
-
[解決済み] Pythonで辞書に新しいキーを追加するにはどうすればよいですか?
-
[解決済み] バイトを文字列に変換する
-
[解決済み] MongoDBに "like "を使ってクエリを実行する方法
-
[解決済み] 2つのリストを辞書に変換するにはどうしたらいいですか?
-
[解決済み】文字列をdatetimeに変換する
-
[解決済み】2つの辞書を1つの式でマージする(辞書の和をとる)には?)
-
[解決済み] 古いバージョンのPythonにおける辞書のキーの並び順
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Pythonのキャッシュライブラリはありますか?
-
[解決済み] PILからopenCVフォーマットへの変換
-
[解決済み] PythonでSVGからPNGに変換する
-
[解決済み] Pythonの要素別タプル演算(sumなど
-
[解決済み] Python 3でバイナリデータを標準出力に書き込むには?
-
[解決済み] 文字列から先頭と末尾のスペースを削除するには?
-
[解決済み] Pythonで0xを使わずにhex()を使うには?
-
[解決済み] 範囲指定された浮動小数点数のランダムな配列を生成します。
-
[解決済み] Django で全てのリクエストヘッダを取得するにはどうすれば良いですか?
-
[解決済み] PythonのRequestsモジュールを使ってWebサイトに "ログイン "するには?