[解決済み] 前月末日
2022-04-22 13:05:42
質問
Pythonで前月の日付を取得しようとしています。 以下は私が試したことです。
str( time.strftime('%Y') ) + str( int(time.strftime('%m'))-1 )
しかし、この方法は2つの理由からよくありません。まず、2012年の2月について(201202ではなく)20122を返します。そして次に、1月について12ではなく0を返します。
私はこの問題をbashで解決しました。
echo $(date -d"3 month ago" "+%G%m%d")
もしbashにこの目的のためのビルトインの方法があるのなら、より多くの機能を持つpythonは、この目的を達成するために自分自身のスクリプトを書くことを強いるよりも良いものを提供するべきだと思うのです。もちろん、私はこのようなことをすることができます。
if int(time.strftime('%m')) == 1:
return '12'
else:
if int(time.strftime('%m')) < 10:
return '0'+str(time.strftime('%m')-1)
else:
return str(time.strftime('%m') -1)
私はこのコードをテストしていませんし、いずれにしても使いたくありません(他に方法が見つからない限りは:/)。
ありがとうございました。
解決方法は?
データタイム とdatetime.timedeltaクラスはあなたの味方です。
- 今日を探す
- を使い、今月の初日を探します。
- timedeltaを使って、1日だけ、前月の最終日までバックアップする。
- 探しているYYYYMMの文字列を表示します。
こんな感じで。
import datetime
today = datetime.date.today()
first = today.replace(day=1)
lastMonth = first - datetime.timedelta(days=1)
print(lastMonth.strftime("%Y%m"))
201202
が印刷されます。
関連
-
ピローによる動的キャプチャ認識のためのPythonサンプルコード
-
[解決済み】TypeError: 系列を <class 'float'> に変換することができません。
-
[解決済み] builtins.TypeError: strでなければならない、bytesではない
-
[解決済み】JavaScriptで「無効な日付」のDateインスタンスを検出する
-
[解決済み] for'ループでインデックスにアクセスする?
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] JavaScriptの日付の書式設定方法
-
[解決済み] JavaScriptで現在の日付を取得するには?
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】Pythonに三項条件演算子はありますか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
ピロウズ画像色処理の具体的な活用方法
-
Python機械学習Githubが8.9Kstarsに達したモデルインタープリタLIME
-
Python jiabaライブラリの使用方法について説明
-
Pythonを使って簡単なzipファイルの解凍パスワードを手作業で解く
-
Python interpreted model libraryによる機械学習モデル出力の可視化 Shap
-
Pythonショートビデオクローラーチュートリアル
-
Python Pillow Image.save jpg画像圧縮問題
-
PythonでECDSAを実装する方法 知っていますか?
-
[解決済み】Pythonでgoogle APIのJSONコードを読み込むとエラーになる件
-
[解決済み】Flaskのテンプレートが見つからない【重複あり