Pythonで現在時刻をformat、string型に変換する方法(strftime)

Pythonのdatetimeモジュールを使うと、日付や時間を扱うことができます。この記事では、datetimeモジュールを使って現在時刻をformat、string型に変換する方法を紹介します。

Pythonのdatetimeモジュールとは

datetimeモジュールは、日付や時間を扱うための標準ライブラリです。datetimeモジュールには、date、time、datetimeという3つのクラスがあります。dateクラスは日付を、timeクラスは時間を、datetimeクラスは日付と時間を扱うことができます。

現在時刻を取得する方法

現在の日付や時間を取得するには、datetimeモジュールのdatetimeクラスを使います。datetime.now()メソッドを呼び出すことで、現在時刻を取得することができます。

import datetime
now = datetime.datetime.now()
print(now)  # 例: 2022-01-01 12:34:56.789012

Pythonでの時間表記のフォーマットの基本

datetimeモジュールを使って取得した日付や時間を、指定したフォーマットで表示することができます。以下に、よく使われるフォーマットコードを紹介します。

フォーマットコード 説明
%Y 4桁の西暦年
%m 2桁の月
%d 2桁の日
%H 24時間表記の時
%M
%S
%f マイクロ秒
%A 曜日名
%B 月名
%Z タイムゾーン名

strftimeメソッドを使った時間のフォーマット変更方法

strftimeメソッドを使うと、datetimeオブジェクトを指定したフォーマットで表示することができます。

import datetime
now = datetime.datetime.now()
formatted_time = now.strftime("%Y-%m-%d %H:%M:%S.%f")
print(formatted_time)  # 例: 2022-01-01 12:34:56.789012

現在時刻をstring型に変換する方法

strftimeメソッドを使うと、datetimeオブジェクトをstring型に変換することができます。

import datetime
now = datetime.datetime.now()
formatted_time = now.strftime("%Y-%m-%d %H:%M:%S.%f")
string_time = str(formatted_time)
print(string_time)  # 例: 2022-01-01 12:34:56.789012

よく使われる時間表記のフォーマット一覧

よく使われる時間表記のフォーマットをまとめました。

フォーマット 説明
%Y-%m-%d %H:%M:%S ISO 8601形式 2022-01-01 12:34:56
%Y/%m/%d %H:%M:%S スラッシュ区切り形式 2022/01/01 12:34:56
%Y年%m月%d日 %H時%M分%S秒 和暦形式 令和4年01月01日 12時34分56秒

まとめ

この記事では、Pythonのdatetimeモジュールを使って現在時刻をformat、string型に変換する方法を紹介しました。datetimeモジュールを使うことで、日付や時間を簡単に扱うことができます。