MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

PythonでMongoDBにオブジェクトを挿入する方法【PyMongo活用ガイド】

PythonからMongoDBデータベースに接続し、オブジェクトの挿入・更新・削除などの操作を行うには、pymongoライブラリを使用します。このライブラリはPythonのdatetimeオブジェクトを標準でサポートしているため、PyMongo経由でMongoDBに日付データを挿入する際に、特別な変換処理は一切不要です。

pymongoのインストール

まず、pipを使ってpymongoをインストールします。

pip install pymongo

サンプルコード

以下は、現在の日時を持つドキュメントをMongoDBに挿入する基本的な例です。

from pymongo import MongoClient
import datetime

# デフォルトのホストとポートでMongoDBへの接続を試みる
client = MongoClient()
db = client.test_database

# 辞書形式のデータをobjectsコレクションに挿入する
result = db.objects.insert_one({"last_modified": datetime.datetime.utcnow()})
print("Object inserted!")

出力結果

このコードを実行すると、以下のような出力が得られます。

Object inserted!

ポイント:utcnow()とnow()の違いに注意

日時を扱う際は、datetime.datetime.now()(ローカルタイムゾーンの現在時刻を返す)ではなく、必ずdatetime.datetime.utcnow()(UTC(協定世界時)の現在時刻を返す)を使用しましょう。UTCで統一することで、サーバーの所在地やタイムゾーン設定に依存しない一貫性のあるデータ管理が可能になります。

  1. 【Python入門】strptimeを使って日付文字列をdateオブジェクトに変換する方法

    Pythonでは、datetimeモジュールのstrptime関数を使うことで、文字列形式の日付データを簡単にdatetimeオブジェクトへ変換できます。この関数には、変換したい日付の文字列と、その日付がどのような書式で記述されているかを示すフォーマット指定子の2つの引数を渡します。基本的な使い方(サンプルコード)以下の例では、「2017年12月29日」という日付が「29122017」という文字列として表現されている場合に、それを日付オブジェクトへ変換しています。import datetime date_str = 29122017 # 日付文字列(2017年12月29日) format

  2. Pythonでリストの指定した位置にオブジェクトを挿入する方法

    Pythonのリストにおいて、指定した位置(インデックス)に要素を挿入したい場合は、insert(pos, obj) メソッドを使用します。このメソッドは挿入したいオブジェクトを1つ引数として受け取り、メソッドを呼び出したリストの pos 番目の位置にそのオブジェクトを追加します。既存の要素は後ろにずらされるため、元のデータが失われることはありません。例my_list = [2, 3, 1, -4, -1, -4] my_list.insert(1, 0) print(my_list)実行結果上記のコードを実行すると、次のような出力が得られます。[2, 0, 3, 1, -4, -1, -4]