お仕事中ワイ
ワイ「ちょいちょい、ちょいっと!」
ワイ「あっ」
ワイ「ま~た読みずらいコードを錬成してしまったで」
def format_name(last: str, first: str, kana_last: str, kana_first: str) -> str:
return last + " " + first + " (" + kana_last + " " + kana_first + ")"
ワイ「↑なんで文字列の結合って」
ワイ「整形後がどうなるかパッと見でイメージしずらいんやろな~」
ハスケル子「それ、f-string(f文字列)使ってみたらどうですか?」
ワイ「ファッ!?」
ワイ「えくすとりーむ!!?」
ハスケル子「ちょっと何言ってるかわかんないです」
ワイ「せやな」
ワイ「ほんで、なんやったっけ?」
f-string(f文字列)とは
ハスケル子「f-string(文字列)です」
ハスケル子「Python3.6
で導入された機能で」
ハスケル子「文字列に変数や式の結果を展開してくるものです」
ワイ「ふむふむ」
ワイ「ちょっとようわかれへんけど」
ワイ「文字列の整形が見やすくなるってこと?」
ハスケル子「そうですね」
f-string(f文字列)に書き換えてみる
ハスケル子「例えば、さっきのコードは――」
def format_name(last: str, first: str, kana_last: str, kana_first: str) -> str:
+ return f"{last} {first} ({kana_last} {kana_first})"
- return last + " " + first + " (" + kana_last + " " + kana_first + ")"
ハスケル子「↑こんな風に書き換えることができますね」
ワイ「おお、なんかめっちゃ見やすくなったで!」
ハスケル子「ですよね」
ハスケル子「文字列リテラルの前にf
またはF
を付けてあげて」
ハスケル子「変数を展開したい位置に{変数}
って書いてあげるんです」
ワイ「なるほどな」
ワイ「ん?そういえばさっき」
ハスケル子「文字列に変数や式の結果を展開してくるものです」
ワイ「↑こう言ってたってことは――」
print(f"1 + 2 + 3 = {1 + 2 + 3}")
ワイ「↑こんなんとか」
ワイ「それから――」
def format_name(last: str, first: str, kana_last: str, kana_first: str) -> str:
return f"{last} {first} ({kana_last} {kana_first})"
print(f"ワイは{format_name('豆蔵', '太郎', 'マメクラ', 'タロウ')}と申しますやで!")
ワイ「↑こんなこともできるってこと?」
ハスケル子「ですね」
ハスケル子「ただ、先輩の理解が珍しく良いので心配になってきました」
ハスケル子「今日はもう帰ってゆっくり休んでください」
ハスケル子「お疲れ様でした」
ワイ「いや、失礼やろ!」
まとめ
文字列の整形はf-string(f文字列)
で可読性を高められる
ワイ「↑ってことやな!」
ハスケル子「ですね!」
〜おしまい〜
おまけ
他の言語にも似たものがある