
Pythonで日付や時間を操作するよ。
日付の計算などを紹介するね。
現在の日付、時間を取得するよ
# 日付・時刻を操作するモジュールを読み込むよ from datetime import datetime # 現在の日付を表示するよ today = datetime.now() print(today)
実行結果
2024-03-17 08:33:25.084094
年、月、日を指定して日付型の値を取得するよ
# 日付・時刻を操作するモジュールを読み込むよ from datetime import datetime # 年、月、日を指定して日付型にするよ targetDate = datetime(2024, 4, 1) print(targetDate)
実行結果
2024-04-01 00:00:00
年、月、日、時、分、秒を指定して日付型の値を取得するよ
# 日付・時刻を操作するモジュールを読み込むよ from datetime import datetime # 年、月、日、時、分、秒を指定して日付型にするよ targetDate = datetime(2024, 4, 1, 15, 35, 59) print(targetDate)
実行結果
2024-04-01 15:35:59
yyyy/mm/dd形式、yyyy年mm月dd日形式で表示するよ
# 日付・時刻を操作するモジュールを読み込むよ from datetime import datetime # 年、月、日、時、分、秒を指定して日付型にするよ targetDate = datetime(2024, 4, 1, 15, 35, 59) # yyyy/MM/dd形式で表示するよ print(targetDate.strftime("%Y/%m/%d")) # yyyy/MM/dd hh:mm:ss形式で表示するよ print(targetDate.strftime("%Y/%m/%d %H:%M:%S")) # yyyy年/MM月dd日形式で表示するよ print(targetDate.strftime("%Y年%m月%d日")) # yyyy年/MM月dd日 hh時mm分ss秒形式で表示するよ print(targetDate.strftime("%Y年%m月%d日 %H時%M分%S秒"))
実行結果
2024/04/01 2024/04/01 15:35:59 2024年04月01日 2024年04月01日 15時35分59秒
2つの日付を比較して大小チェックするよ
# 日付・時刻を操作するモジュールを読み込むよ from datetime import datetime # 現在の日付を表示するよ today = datetime.now() # 年、月、日、時、分、秒を指定して日付型にするよ targetDate = datetime(2024, 4, 1, 15, 35, 59) # 日付の大小を比較するよ if today < targetDate: print(f'今日は{targetDate.strftime("%Y/%m/%d")}より前だよ') else: print(f'今日は{targetDate.strftime("%Y/%m/%d")}以降だよ')
実行結果
今日は2024/04/01より前だよ
経過日数を取得するよ
# 日付・時刻を操作するモジュールを読み込むよ from datetime import datetime # 現在の日付を表示するよ today = datetime.now() # 指定の日付を指定するよ targetDate = datetime(2024, 2, 1) # 経過日数を計算するよ resultDate = (today - targetDate).days print(f"{resultDate}日経過しました。")
実行結果
45日経過しました。
日付型かチェックする関数を作るよ
# 日付・時刻を操作するモジュールを読み込むよ from datetime import datetime # 日付型かチェックするよ def isDate(targetValue): try: # 引数の型によって処理を分岐するよ if isinstance(targetValue, int): # 数値(yyyymmdd)を日付型に変換するよ resultValue = datetime.strptime(str(targetValue), "%Y%m%d") return True elif isinstance(targetValue, str): # 文字(yyyy/mm/dd)を日付型に変換するよ resultValue = datetime.strptime(targetValue, "%Y/%m/%d") return True elif isinstance(targetValue, datetime): # 日付型であればTrueを返すよ return True else: return False except ValueError: return False # 数値型 print(isDate(20240229)) # 文字型 print(isDate("2024/02/55")) # 日付型 print(isDate(datetime.today()))
実行結果
True False True
生年月日から年齢を計算する関数を作るよ
# 日付・時刻を操作するモジュールを読み込むよ from datetime import datetime # 生年月日から年齢を計算するよ def calcAge(birthDay): # 生年月日をdatetimeオブジェクトに変換 birthDay = datetime.strptime(birthDay, "%Y/%m/%d") # 現在の日付を表示するよ today = datetime.now() # 年齢を計算するよ return today.year - birthDay.year - ((today.month, today.day) < (birthDay.month, birthDay.day)) # 年齢を計算 age = calcAge("2000/04/01") # 年齢を表示 print(f"現在の年齢は{age}歳です。")
実行結果
現在の年齢は23歳です。
0 件のコメント:
コメントを投稿