【Python】日付を任意の形式にフォーマットする方法

この記事では、Pythonを使って日付を任意の形式にフォーマットする方法を学びます。

日付を文字列に変換したり、曜日や時刻を追加したりする方法を解説します。

日付フォーマットのカスタマイズについて理解しましょう。

目次から探す

日付をフォーマットする方法

日付を文字列に変換する

Pythonでは、日付を任意の形式の文字列に変換することができます。

strftime()メソッドを使用して、日付オブジェクトを文字列に変換します。

以下は、日付を文字列に変換するサンプルコードです。

import datetime

# 現在の日付を取得
today = datetime.datetime.now()

# 日付を文字列に変換
date_string = today.strftime("%Y-%m-%d %H:%M:%S")
print(date_string)
2024-02-14 06:57:18

strftime()メソッドの使い方

strftime()メソッドは、日付オブジェクトを指定したフォーマットの文字列に変換する際に使用されます。

フォーマット指定子を使って、年、月、日、時刻などの要素を任意の形式で組み合わせることができます。

以下は、strftime()メソッドの使い方を示すサンプルコードです。

import datetime

# 現在の日付を取得
today = datetime.datetime.now()

# 日付を指定したフォーマットで文字列に変換
date_string = today.strftime("%Y年%m月%d日 %H時%M分%S秒")
print(date_string)
2024年02月14日 06時57分23秒

日付フォーマット指定子の一覧

日付フォーマット指定子は、日付を特定の形式で表現するための記号です。

以下によく使用される日付フォーマット指定子の一覧を示します。

  • %Y : 年(4桁)
  • %m : 月(ゼロ埋め)
  • %d : 日(ゼロ埋め)
  • %H : 時(24時間表記)
  • %M : 分
  • %S : 秒

これらの指定子を組み合わせて、任意の形式で日付をフォーマットすることができます。

日付フォーマットのカスタマイズ

年、月、日の表記方法を変更する

Pythonでは、日付を任意の形式にフォーマットする際に、年、月、日の表記方法をカスタマイズすることができます。

例えば、年を4桁で表示したい場合や、月をゼロ埋めして表示したい場合など、様々な表記方法が可能です。

以下にサンプルコードを示します。

import datetime

# 現在の日付を取得
now = datetime.datetime.now()

# 年を4桁で表示
formatted_date = now.strftime("%Y年%m月%d日")
print(formatted_date)
2024年02月14日

上記のコードでは、%Yを使用することで年を4桁で表示しています。

他にも%yを使用すると年を2桁で表示することも可能です。

曜日や時刻の表記を追加する

日付フォーマットをカスタマイズする際に、曜日や時刻の表記を追加することもできます。

曜日を表示したい場合は%Aや%aを使用し、時刻を表示したい場合は%Hや%Mを使用します。

以下にサンプルコードを示します。

import datetime

# 現在の日付を取得
now = datetime.datetime.now()

# 曜日と時刻を表示
formatted_date = now.strftime("%Y年%m月%d日 %A %H時%M分")
print(formatted_date)
2024年02月14日 Wednesday 06時57分

上記のコードでは、%Aを使用することで曜日をフルネームで表示し、%Hと%Mを使用することで時刻を表示しています。

ゼロ埋めやスペース埋めの設定

日付フォーマットをカスタマイズする際に、数字のゼロ埋めやスペース埋めを設定することもできます。

例えば、月を常に2桁で表示する場合や、日付の前にスペースを入れる場合などがあります。

以下にサンプルコードを示します。

import datetime

# 現在の日付を取得
now = datetime.datetime.now()

# 月を2桁で表示
formatted_date = now.strftime("%Y年%m月%d日")
print(formatted_date)

# 日付の前にスペースを入れる
formatted_date_space = now.strftime("%Y年 %m月 %d日")
print(formatted_date_space)
2024年02月14日
2024年 02月 14日

上記のコードでは、%mを使用することで月を2桁で表示し、日付の前にスペースを入れるためにスペースを追加しています。

日付フォーマットをカスタマイズする際に、ゼロ埋めやスペース埋めを活用して、見やすい表示を行うことができます。

これで、日付フォーマットのカスタマイズに関する基本的な方法を学びました。

次は実際に自分のプロジェクトで日付フォーマットをカスタマイズしてみて、慣れていきましょう。

目次から探す