サイトアイコン Python Snippets

フォーマット済み文字列リテラル(f-string)

3.6からフォーマット済み文字列リテラル(f-string)が使用できるようになりました。

文字列内で変数を参照する書き方です。フォーマット指定に関してはformat関数とほぼ同じです。

>>> a = 10
>>> print(f'aの値は{a}です')
aの値は10です

>>> print(f'aの値は{a:03d}です')
aの値は010です

>>> print(f'aの値は{a:.2f}です')
aの値は10.00です

日付などのフォーマットも利用可能

import datetime
>>> now = datetime.datetime.now()
>>> print(f'nowの値は{now:%Y/%m/%d %H:%M:%S}です')
nowの値は2021/02/10 12:12:43です

ちょっと便利な機能として、3.6からは=を書式指定に使うとその変数名を表示してくれます。

import datetime
>>> now = datetime.datetime.now()
>>> print(f'{now=}')
now=datetime.datetime(2023, 8, 26, 16, 12, 34, 392947)

書式指定としてf{now=}と書くだけで、now=値 のように表示されてデバッグのときに便利です。

>>> print(f"{now=:[%Y-%m-%d]}") # =のあとにフォーマット指定する例
now=[2023-08-26]

参考: フォーマット済み文字列リテラル

関連記事:

モバイルバージョンを終了