Python print関数の書式 #8 f-strings #2

株式会社リュディアです。引き続き f-strings についてまとめていきます。

前回までのprint関数の書式のまとめへのリンクは以下を参考にしてください。

まずは文字列の出力幅を指定する方法です。format 関数による方法との対比のみ記載していきます。

str = 'Python'
ver = 3

print('{:10} {:3}'.format(str, ver)) # format関数による方法
print(f'{str:10} {ver:3}')           # f-strings による方法

>> Python       3

>> Python       3

format 関数より明らかに記載しやすくなったと思いますし感覚的にもわかりやすいと思います。

次は左寄せ、右寄せ、中央寄せの記述です。こちらも f-strings で簡単に記述できるようになったと思いませんか?

str = 'Python'
ver = 3

print('{:<10} {:<3}'.format(str, ver)) # < は左寄せ、format 関数による方法
print('{:>10} {:>3}'.format(str, ver)) # > は右寄せ、format 関数による方法
print('{:^10} {:^3}'.format(str, ver)) # ^ は中央寄せ、format 関数による方法

print(f'{str:<10} {str:<3}')           # < は左寄せ、f-strings による方法
print(f'{str:>10} {str:>3}')           # > は右寄せ、f-strings による方法
print(f'{str:^10} {str:^3}')           # ^ は中央寄せ、f-strings による方法

>> Python     3  
>>     Python   3
>>   Python    3 

>> Python     Python
>>     Python Python
>>   Python   Python

次は配置指定を行った際の空白部を他の文字で埋める方法です。以下の例を見てください。

str = 'Python'
ver = 3

print('{} {}'.format(str, ver))
print('{:10} {:3}'.format(str, ver))
print('{:-<10} {:~<3}'.format(str, ver))
print('{:->10} {:~>3}'.format(str, ver))
print('{:-^10} {:~^3}'.format(str, ver))

print(f'{str} {ver}')
print(f'{str:10} {ver:3}')
print(f'{str:-<10} {ver:~<3}')
print(f'{str:->10} {ver:~>3}')
print(f'{str:-^10} {ver:~^3}')

>> Python 3
>> Python       3
>> Python---- 3~~
>> ----Python ~~3
>> --Python-- ~3~

>> Python 3
>> Python       3
>> Python---- 3~~
>> ----Python ~~3
>> --Python-- ~3~

10バイトの領域のうち文字列 Python 以外の部分を '-' で埋め、3バイトの領域のうち整数 3 以外の部分を '~' で埋めています。こちらも f-strings で簡単に記述できるようになったと思います。

f-strings で記述すると print 関数による出力部分が簡潔に記載できるようになることがわかっていただけたかと思います。

print 関数の書式に関するまとめの続きは以下からどうぞ。

では、ごきげんよう。



いいなと思ったら応援しよう!