icon
icon

Pythonのformatメソッドの使い方を現役エンジニアが解説【初心者向け】

初心者向けにPythonのformatメソッドの使い方について現役エンジニアが解説しています。formatメソッドは文字列に変数を埋め込むときに使用するメソッドです。複数指定したり、リストを指定したりすることもできます。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

Pythonのformatメソッドの使い方について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して、初心者向けに解説します。

 

Pythonについてそもそもよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まるでしょう。

 

なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Pythonのformatメソッドの使い方について詳しく説明していくね!

大石ゆかり

お願いします!

 

formatメソッドとは

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

例えば「今日は○○月××日」という文字列に対して、〇〇と××に変数の値を埋め込むときにformatメソッドを使用します。

formatメソッドを使えば固定の文字列を何度も使いまわすことが可能です。

 

formatメソッドの使い方

formatメソッドは以下のコードで使用しましょう。

'文字列{}文字列'.format(埋め込みたい値)

文字列の間に{}があり、その箇所にformatメソッドの引数となる埋め込みたい値を埋め込みます。

 

また、複数の変数を埋め込むことも可能であり、以下のように記述します。

'文字列{}文字列{}文字列'.format(埋め込みたい値1, 埋め込みたい値2)

{}の中に引数の番号を書くと引数の順番に関わらず埋め込むことが可能です。

{}の中に番号を書かない場合は、引数の順番通りに一番左の{}から埋め込んでいきましょう。

 

[PR] Pythonで挫折しない学習方法を動画で公開中

実際に書いてみよう

実際にformatメソッドを使ってみましょう。

以下、プログラムソースコードとなります。

str = "こんにちは!私の名前は{}です。"
name = "山田太郎"
print(str.format(name))

 

実行結果

こんにちは!私の名前は山田太郎です。

{}の中にformatメソッドの引数である変数を埋め込むことができました。

次に複数の変数を文字列に埋め込むときを記述してみましょう。

 

以下、ソースコードになります。

str = "私の名前は{2}です。私の誕生日は{0}月{1}日です。{2}をよろしくお願いします!"
name = "山田太郎"
month = 12
date = 1
print(str.format(month, date, name))

 

実行結果

私の名前は山田太郎です。私の誕生日は12月1日です。山田太郎をよろしくお願いします!

{}の中に数字を書くことで変数の指定の位置のものを埋め込むことができます。文字列の中で複数回同じ変数を埋め込むことも可能です。

最後にリストの要素を文字列に埋め込む方法をみていきます。

プログラムソースコード

str = "私の名前は{0[0]}です。私の誕生日は{0[1]}月{0[2]}日です。{0[0]}をよろしくお願いします!"
list = ['山田太郎', 12, 1]
print(str.format(list))

 

実行結果

私の名前は山田太郎です。私の誕生日は12月1日です。山田太郎をよろしくお願いします!

埋め込み文字列を{リストの位置[要素番号]}で指定してあげることでリストの要素を埋め込むことができます。

 

まとめ

この記事ではPythonでformatメソッドを使う方法について解説しました。

formatメソッドあPython2.6以降でしか使えません。

Pythonのバージョンにも気を付けて使いましょう。

 

執筆してくれたメンター

メンターSさん

システムエンジニアとしてこれまで行政システムや医療用システムの保守、開発に携わりました。

JavaやPython、PHP、Kotlinなど様々な言語での開発経験があります。

TechAcademyではJavaコース、Pythonコース、AIコースなど7コースを担当しています。

 

大石ゆかり

Pythonのformatメソッドの使い方がよく分かったので良かったです!

田島悠介

ゆかりちゃん、これからも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも、Pythonを使った人工知能(AI)や機械学習の基礎を習得できるオンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、参加してみてください。