From the Southern Hemisphere

From the Southern Hemisphere

南半球に移住したプログラマの日々

【Python】文字列のフォーマットメソッド format と フォーマット文字列 f-string

こんにちは、ピコピコくんです。
今日は文字列のフォーマットについて書きました。

文字列のフォーマットメソッド

複数の変数を使って動的に文字列を扱いたいときに、文字列の format メソッドを使うと下記のようなコードを書くことができます。

サンプルコード

a = 10
b = 5
# 変数 str にformatメソッドで
str = '{} / {} = {}'.format(a, b, a/b)
# 変数 str を表示
print(str)

実行結果

10 / 5 = 2.0

解説

文字列 '{} / {} = {}' の波括弧 { } が formatメソッドの引数にそれぞれ対応しています。文字列中の波括弧の数と引数が一致していれば1つずつでも、複数でも使うことができます。文字列リテラルの一つ目の { } が第一引数の a に、二つ目の { } が第二引数の b に、そして最後の { } が第三引数の a / b の計算結果に置き換わります。

str = '{} / {} = {}'.format(a, b, a/b)

フォーマット済み文字列: f-string

Python 3.6 から導入されたフォーマット文字列という仕組みを使って format メソッドのような処理が実現できます。文字列リテラルの先頭に f または F を置きます。そして文字列リテラルの中に波括弧と置き換えたい変数名を { 変数名 } のように書きます。下記のサンプルコードにあるように { c / d } のような式を書くこともできます。

サンプルコード

c = 100
d = 50
str = f'{c} / {d} = {c/d}'
print(str)

実行結果

100 / 200 = 0.5

参考書籍

Pythonで学ぶアルゴリズムとデータ構造で勉強中です。

Pythonで学ぶアルゴリズムとデータ構造 (データサイエンス入門シリーズ)

Pythonで学ぶアルゴリズムとデータ構造 (データサイエンス入門シリーズ)

  • 作者:辻 真吾
  • 発売日: 2019/11/28
  • メディア: 単行本(ソフトカバー)

スポンサー広告