今日から12月がスタートします。2024年も残すところあと1ヶ月なんですね。
1年過ぎるのは本当に早い…
Pythonで日付データを扱う時はdatetimeモジュールなんかを使う事が多いです。
または、文字列で取得した値を数値型に変換したりなど扱いが、ちょっと面倒だったりしますね。
ただ、文字列として受け取ったデータ同士の順序関係を比較するだけだったら型変換は不要。
x = "2024/12/01"
y = "2024/11/30"
if x > y:
print("xの方が後")
else:
print("yの方が後")
# 出力結果 xの方が後
xには文字列で 2024/12/01 が入っています。
yには文字列で 2024/11/30 を入れました。
正しく判定できています。
順序関係の比較は日付データに限った話ではありません。
# アルファベット順の判定
x = "A"
y = "Z"
if x > y:
print("xの方が後")
else:
print("yの方が後")
# 出力結果 yの方が後
# ただし、アルファベットは大文字小文字の順があり A ~ Z → a ~ z という順番になる
アルファベット順ではAの方がZの前に来るはずなので、yの方が後に来ると正しい判定ができています。
数値に関しても桁数を合わせれば順序関係の判定を正しく出力します。
あまり、こういった使い方はしないと思いますが一応…
x = "099"
y = "620"
if x > y:
print("xの方が後")
else:
print("yの方が後")
# 出力結果 yの方が後
基本的には型変換して、その目的に合った型を選択すべきですが
こういった使い方もできるよ!って事を覚えておくと便利な時があると感じて記録しておきます。
以上