私の意見では、@ Fabianの答えはおそらく最高です。しかし、これを必要以上に難しくしていませんか?
日、月、年ごとに計算する必要がありますか?
これを生成している場合、timesec 表現を使用する方が簡単ではないでしょうか?
ユーザーがログインすると:
user_login_time = time.time()
ユーザーが再度アクセスした場合:
time_difference = time.time() - user_login_time
次に、time_difference が XXXX 秒を超えているかどうかを確認しますか? ここで、ユーザーが XX 分またはxx時間ログインしていないかどうかを確認するだけだと思いますか?
それ以外の場合、時間の日付文字列の解析を検討している場合、またはデータで他の時間/日付関数を実行する必要がある場合は、@ Fabian の回答が最適であることを強調します。
また、この方法を使用する場合は、時間の定数を作成するか、コメントを付けて、読みやすくすることも強調します。
ただし、ユーザーが過去 30 分間にオンになっているかどうかを確認するだけの場合は、こちらの方が簡単かもしれません。