LoginSignup
1
1

ハスケル子「それ、f-string(f文字列)使ってみたらどうですか?」

Posted at

お仕事中ワイ

ワイ「ちょいちょい、ちょいっと!」
ワイ「あっ」
ワイ「ま~た読みずらいコードを錬成してしまったで」

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文字列)で可読性を高められる

ワイ「↑ってことやな!」

ハスケル子「ですね!」

〜おしまい〜

おまけ

他の言語にも似たものがある

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1