python

【Python】formatメソッドとフォーマット済み文字列の使い方の違い【基本から解説】

見習いエンジニア
Pythonの関数うち、変数の内容を出力する事が出来るformatメソッドについてよく分からないです。

またフォーマット済み文字列であるf文字列(formatted string)についても知りたいです。
この様な方に向けての記事になります。

 

今回はformat メソッドとf文字列について解説していきます。

 

この内容についてはpriont文の使い方でも詳しく説明しているので、以下もセットで学習するとより理解が深まります。

関連記事
Python print 書き方
Pythonのprintの書き方について【基本から応用まで】

続きを見る

 

Python3.6では formatメソッドに加えて、フォーマット済み文字列( f-strings )が導入されました。

 

今回は、変数の中身を出力させるformatメソッドを深掘りして、フォーマット済み文字列であるf文字列(formatted string)についても触れていこうと思います。

 

では早速見ていきましょう。

formatメソッドについて

python formatメソッド 使い方

 

formatメソッドは、文字列内に変数を埋め込むときに使用するメソッドです。

 

主にprint関数で文字列を出力するときに使用される事が多いです。

 

'ob{}ai'.format(gyn) と表します。

 

ob とaiの間の {} にformat メソッドで指定された変数が入ります。

 

format構文の使い方は以下の様な感じになります。

book_page = 356
>>> print("The number of this page is the {}th.".format(book_page))
The number of this page is the 356th.

formatメソッドの応用例

複数のformatメソッドを使用する時には以下の様な使い方になります。

>>> x = 9
>>> y = 12
>>> z = 21
>>> "The value of xyz is {},{},and{}.".format(str(x),str(y),str(z))
'The value of xyz is 9,12,and21.'

以上の様に3変数以上の引数を用いる事も出来ます。

 

更に、{} の中に各々 0 , 1 , 2 を代入しても順番に引数を入れる事ができます。

>>> x = 9
>>> y = 12
>>> z = 21
>>> "The value of xyz is {0},{1},and{2}.".format(str(x),str(y),str(z))
'The value of xyz is 9,12,and21.'

以上になります。

 

この点についても以下のきじが参考になるかと思います。



 

f文字列| フォーマット済み文字列について

python formatメソッド 使い方


冒頭でお話しした様に、python 3.6 では式を文字列中に直接記述できるようになりました。

 

式を埋め込んだ文字列はf文字列(formatted string:フォーマット済み文字列)と呼ばれれています。

 

先頭に f を指定し、文字列内の {} で囲まれた部分は、Pythonの式として評価し、その結果を文字列として出力すします。

 

すなわち、フォーマット済み文字列リテラルでは、f '文字列' の中の文字列中に{}やその中に数式を記入することができます。

 ## 文字のみのf文字列
... f"obgynai"
'obgynai'


その他にも以下の様な例もあります。

>>> a = 1
>>> b = 3.141592
>>> c = dict(key1=789)
>>> d = 'abc'
>>> f'{a} {b:.1f} {c["key1"]} {d.upper(abc)}'
'1 3.1 789 ABC'


※ ここで大文字と小文字に変換するには、upper(),  lower() を使用します。
以下を参照にして下さい。

文字列.upper()
文字列.lower()

まとめ|formatメソッドとフォーマット済み文字列について

python formatメソッド フォーマット済み文字列 違い


Pythonではフォーマット済み文字列が頻用されます。

 

一度使用方法についてまとめておく様にしましょう。

 

この記事を理解してからprint文の使い方を再度読み込むと理解が深まります。

関連記事
Python print 書き方
Pythonのprintの書き方について【基本から応用まで】

続きを見る

 

今回は以上とします。


-python
-, ,