Pythonで現在の日時の文字列形式を取得するにはどうすればよいですか?


113

たとえば、2010年7月5日に、文字列を計算したいと思います

 July 5, 2010

これはどのように行う必要がありますか?

回答:


227

このdatetimeモジュールを使用して、Pythonで日付と時刻を操作できます。このstrftimeメソッドを使用すると、指定した形式で日付と時刻の文字列表現を生成できます。

>>> import datetime
>>> datetime.date.today().strftime("%B %d, %Y")
'July 23, 2010'
>>> datetime.datetime.now().strftime("%I:%M%p on %B %d, %Y")
'10:36AM on July 23, 2010'

34
#python3

import datetime
print(
    '1: test-{date:%Y-%m-%d_%H:%M:%S}.txt'.format( date=datetime.datetime.now() )
    )

d = datetime.datetime.now()
print( "2a: {:%B %d, %Y}".format(d))

# see the f" to tell python this is a f string, no .format
print(f"2b: {d:%B %d, %Y}")

print(f"3: Today is {datetime.datetime.now():%Y-%m-%d} yay")

1:test-2018-02-14_16:40:52.txt

2a:2018年3月4日

2b:2018年3月4日

3:今日は2018-11-11です


説明:

新しい文字列形式を使用して、プレースホルダー{}の文字列に値を挿入すると、valueが現在の時刻になります。

次に、生の値を単に{}として表示するのではなく、フォーマットを使用して正しい日付フォーマットを取得します。

https://docs.python.org/3/library/string.html#formatexamples


あなたの回答はコードのみであるため、低品質のフラグが付けられました。答えをもっと詳しく説明してください。
デレクブラウン

1
確率は最高です。
nulltron 2018

fどういう意味print(f"3ですか?
Lei Yang

ここで@ lei-yangは説明です:realpython.com/python-f-stringsは文字列をf文字列としてマークし、次にpythonはコード/変数が含まれる{}を探し、コンテンツを文字列に配置します。最新のpython3.6文字列フォーマットの追加
Pieter

このページの下部にあるhttps://docs.python.org/3/library/datetime.htmlには、プレースホルダーのような%Bものとそれらが表すものがリストされています。
James Toomey


6

書式設定を気にせず、簡単な日付が必要な場合は、これを使用できます。

import time
print(time.ctime())
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.