日、時間、週、月単位で繰り返し処理を行うには?
2023-11-14 09:33:52
質問
日、時間、週、月単位で繰り返し処理を行うにはどうしたらよいでしょうか。
のようなものです。
for date in foo(from_date, to_date, delta=HOURS):
print date
ここで、fooは関数で、イテレータを返します。私はカレンダーモジュールを見てきましたが、それは1つの特定の年または月に対してのみ動作し、日付の間では動作しません。
どのように解決するのですか?
使用方法 デートユーティル とそのrruleの実装を、このように使います。
from dateutil import rrule
from datetime import datetime, timedelta
now = datetime.now()
hundredDaysLater = now + timedelta(days=100)
for dt in rrule.rrule(rrule.MONTHLY, dtstart=now, until=hundredDaysLater):
print dt
出力は
2008-09-30 23:29:54
2008-10-30 23:29:54
2008-11-30 23:29:54
2008-12-30 23:29:54
MONTHLYをYEARLY、MONTHLY、WEEKLY、DAILY、HOURLY、MINUTELY、SECONDLYのいずれかに置き換えてください。 dtstartとuntilを任意のdatetimeオブジェクトに置き換えてください。
このレシピは、MONTHLYを含むすべてのケースで動作するという利点があります。 私が見つけた唯一の注意点は、すべての月について存在しない日数を渡すと、それらの月をスキップすることです。
関連
-
[解決済み] PandasでDataFrameの行を反復処理する方法
-
[解決済み] 割り当て後にリストが予期せず変更されました。その理由と防止策を教えてください。
-
[解決済み] 指定されたディレクトリ内のファイルを反復処理するにはどうすればよいですか?
-
[解決済み] 秒を時間、分、秒に変換するには?
-
[解決済み] Pythonでコード行間にかかる時間を測定するには?
-
[解決済み] Pythonの要素別タプル演算(sumなど
-
[解決済み] あるオブジェクトが数であるかどうかを確認する、最もパイソン的な方法は何でしょうか?
-
[解決済み] subprocess.run()の出力を抑制またはキャプチャするには?
-
[解決済み] CSVデータを処理する際、1行目のデータを無視する方法を教えてください。
-
[解決済み] 日数だけを扱う場合の「datetime.timedelta」と「dateutil.relativedelta.relativedelta」の違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] pandasのDataFrameから空のセルを含む行を削除する
-
[解決済み] SQLAlchemy: 日付フィールドをフィルタリングする方法は?
-
[解決済み] 文字列から先頭と末尾のスペースを削除するには?
-
[解決済み] 範囲指定された浮動小数点数のランダムな配列を生成します。
-
[解決済み] オブジェクトのリストに特定の属性値を持つオブジェクトが含まれているかどうかをチェックする
-
[解決済み] matplotlib でプロットの軸、目盛、ラベルの色を変更する方法
-
[解決済み] Pandasのデータフレーム内の文字列を'date'データ型に変換するにはどうしたらいいですか?
-
[解決済み] Python Empty Generator 関数
-
[解決済み] Pythonでランダムなファイル名を生成する最良の方法
-
[解決済み] Pythonの辞書にあるスレッドセーフについて