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

Pythonでの日付と時刻の操作


日付と時刻の操作は、プログラミング言語の不可欠な部分です。 Pythonには、日付と時刻を含む計算を実装するためのほぼすべての機能を備えたdatetimeモジュールを含む標準ライブラリがあります。以下の例では、日時のさまざまな側面がどのように実装されているかを確認します。

現在の日付の処理

datetimeモジュールには、datetimeという名前のクラスがあります。このクラスをインポートし、その関数を使用して日時オブジェクトを作成できます。次に、さまざまな書式設定手法を適用して、日付と時刻の値を表示します。したがって、最初にnow()関数で初期化された日時オブジェクトを作成します。このオブジェクトは現在の日付と時刻のすべての部分を保持し、次にそのさまざまな部分を操作します。

from datetime import datetime
dt_time_obj = datetime.now()
# Print the current date time
print(dt_time_obj)
# Find the object class
print('Object Class :- ',type(dt_time_obj))

出力

上記のコードを実行すると、次の結果が得られます-

2020-01-22 09:33:02.693863
Object Class :-

日時と文字列

strptimeメソッドとstrftimeメソッドを使用して、文字列を日時に変換し、日時を文字列に変換できます。この変換は、Pythonが日時として呼び出すために必要な正確な形式でデータが表示されない可能性がある、さまざまなデータソースを処理する場合に必要です。次の例では、文字列を取得して日時に変換します。また、反対のアクションを実行します。

from datetime import datetime
dt_string = '2020-1-30 2-52-59'

# Create date object from String
date_val = datetime.strptime(dt_string, "%Y-%m-%d %H-%M-%S")

print(date_val)
print('Class: ',type(date_val))
print("\n")
# Create String from Date Object
date_val_str = datetime.strftime(date_val, "%Y-%m-%d %H-%M-%S")
print(date_val_str)
print('Class: ',type(date_val_str))

出力

上記のコードを実行すると、次の結果が得られます-

2020-01-30 02:52:59
Class:
2020-01-30 02-52-59
Class:

日時値の一部を抽出する

ディレクティブとstrftimeメソッドを使用して、日付のさまざまな部分を抽出できます。以下は、さまざまなディレクティブとその目的に関するいくつかの例のリストです。すべてのディレクティブの完全なリストについては、こちらのPythonドキュメントを参照してください。

ディレクティブ
使用法
%A
平日
%B

%M

%Y

%d
月の日

次の例は、ディレクティブの使用方法を示しています。

from datetime import datetime
dt_string = '2020-1-30 2-52-59'
# Create date object from String
date_val = datetime.strptime(dt_string, "%Y-%m-%d %H-%M-%S")
#Return the year and name of weekday, month,Day of month:
print(date_val.year)
print(date_val.strftime("%d"))
print(date_val.strftime("%B"))
print(date_val.strftime("%A"),"\n")

出力

上記のコードを実行すると、次の結果が得られます-

2020
30
January
Thursday

日時演算

次に、日付と時刻を含む計算の例を示します。特定の日付から日、時間などを加算および減算できます。また、日付を入力として受け取り、さまざまな操作を適用することもできます。

TimeDeltaの使用

#import datetime
from datetime import *

# Find current time
dt_time_today = datetime.now()
print ("Today's date: ", str(dt_time_today))

#add 5 days to current
new_date = dt_time_today + timedelta(days = 5)
print('After 5 days: ', new_date)

#Remove 2 weeks from current date
two_weeks_back = dt_time_today - timedelta(weeks = 2)
print('Two weeks ago: ', two_weeks_back)
print('two_weeks_back object type: ', type(two_weeks_back))

出力

上記のコードを実行すると、次の結果が得られます-

Today's date: 2020-01-29 12:38:03.290795
After 5 days: 2020-02-03 12:38:03.290795
Two weeks ago: 2020-01-15 12:38:03.290795
two_weeks_back object type:

演算子の使用

2つの日付の間にいくつかの演算子を適用できます。日付の違いはマイナス演算子を使用して確認でき、日付は論理演算子を使用して比較できます。

from datetime import datetime

# Given Dates
date1 = datetime(2018,5, 12, 8, 11, 53)
date2 = datetime(2017, 6, 16, 12, 43, 27)

# Difference between two dates
date_diff = date1-date2
print("Difference: ", date_diff)

# Comparing two dates
print(date1 < date2)

出力

上記のコードを実行すると、次の結果が得られます-

Difference: 329 days, 19:28:26
False

  1. Pythonで画像を操作しますか?

    最も人気があり、画像処理用のPythonのデフォルトライブラリと見なされているものの1つは、Pillowです。 Pillowは、Python Image LibraryまたはPILの更新バージョンであり、さまざまなシンプルで高度な画像操作機能をサポートしています。これは、sciPyやMatplotlibなどの他のPythonライブラリでの単純な画像サポートの基礎でもあります。 枕の取り付け 始める前に、Pythonと枕が必要です。 Linuxの場合、Fedora、Debian / Ubuntu、ArchLinuxなどのLinuxの主要なフレーバーには、以前はPILが含まれていたパッケージにP

  2. PythonでPDFファイルを操作しますか?

    Pythonは、さまざまな要件に対応するための膨大なライブラリセットを提供するため、非常に用途の広い言語です。私たちは皆、Portable Document Format(PDF)ファイルに取り組んでいます。 Pythonは、PDFファイルを操作するためのさまざまな方法を提供します。ここでは、PyPDF2というPythonライブラリを使用してPDFファイルを操作します。 PyPDF2は、PDFファイルのページを分割、マージ、トリミング、および変換できる純粋なPythonPDFライブラリです。また、カスタムデータ、表示オプション、およびパスワードをPDFファイルに追加することもできます。 PD