Python入門|f-stringで文字列をきれいに整形しよう【レッスン1-5】

ながみえ

一つ前のLessonでは文字列操作について学習しました。

今回はフォーマット文字列について見ていきます。

Lesson1:基礎文法編
・Lesson1-1:Pythonの入り口|初めてコードを書いてみよう
・Lesson1-2:変数の基本を理解しよう
・Lesson1-3:四則演算をしよう
・Lesson1-4:文字列を操作しよう
・Lesson1-5:フォーマット文字列を使いこなそう ◁今回はココ
・Lesson1-6:乱数を生成しよう
・練習問題1-1:レッスン1の内容を総復習しよう
Lesson2:制御構造編
Lesson3:関数とスコープ編
Lesson4:データ構造編
Lesson5:オブジェクト指向編
次のステップ:Pythonを用いたアプリ開発

<<前のページ

【Python学習記事のアイキャッチ画像】Lesson1-4 文字列を操作しよう

Pythonの記事一覧

Python学習カテゴリの親ページ用アイキャッチ画像(テキスト&問題集)、記事一覧へのリンク案内

次のページ>>

【Python学習記事のアイキャッチ画像】Lesson1-6 乱数を生成しよう

Pythonのフォーマット文字列(f-string)とは

ここではPythonにおける「フォーマット文字列(f文字列)」の意味や使い方を復習します。必要ない方はここをクリックして練習問題へ飛びましょう。

プログラミングにおいて、データをわかりやすく表示することは非常に重要です。そしてPythonのフォーマット文字列はデータを特定の形式で見やすく表示したいときに役立つ機能です。

初心者向けにPythonのフォーマット文字列の使い方をわかりやすく説明します。

置換フィールド(f-strings

Python 3.6以降で利用できるf文字列(f-strings)は、フォーマット文字列の最も簡単で強力な方法です。

文字列の中に直接変数を埋め込んで表示できるので、コードがシンプルになります。

name = "Alice"
age = 30
print(f"名前は{name}で、年齢は{age}歳です。")

このコードの出力は以下のようになります。

名前はAliceで、年齢は30歳です。

fの後に続く文字列の中で、{}の中に変数名を入れることで、その値が自動的に表示されます。

変数だけでなく、計算式や関数の結果も埋め込むことが可能です。

num1 = 10
num2 = 5
print(f"{num1} + {num2} = {num1 + num2}")

この例では、{num1 + num2}が計算されて出力されます。

10 + 5 = 15

フォーマット指定子

フォーマット文字列では、値の表示形式を指定できます。

例えば小数点以下の桁数を指定したり、数値を整列させたりすることができます。

pi = 3.14159
print(f"円周率は{pi:.3f}です。")

このコードの出力は以下のようになります。

円周率は3.142です。

.3fは、小数点以下3桁まで表示するという指定です。

また、数値を整列させることも可能です。

for i in range(1, 6):
    print(f"番号: {i:02}")

このコードの出力は以下のようになります。

番号: 01
番号: 02
番号: 03
番号: 04
番号: 05

{i:02}は、2桁の数値として表示し、1桁の場合は先頭に0を追加するという意味です。

まとめ

Pythonはフォーマット文字列を使うことでデータを効率よく表示できます。

これらのフォーマット方法をマスターすることで、データをより自由に、そして見やすく表示できるようになります。

練習問題:フォーマット文字列で出力しよう

ユーザーから名前と年齢を入力してもらい、それをフォーマット文字列を使って表示するプログラムを作成しましょう。

問題の詳細条件

以下の要件に従ってコードを完成させてください。

  • input 関数を使って、ユーザーから名前と年齢を入力してもらうこと。
  • 変数 name に名前、変数 age に年齢を代入すること。
  • f-stringを使って「こんにちは、○○さん。あなたは○○歳ですね。」という形式で表示すること。

ただし、以下のような実行結果となるコードを書くこと。

名前を入力してください: 佐藤
年齢を入力してください: 25
こんにちは、佐藤さん。あなたは25歳ですね。

問題の答え合わせと解説

この問題の一つの正解例とそのコードの解説を以下に示します。

一つの正解例

例えば以下のようなプログラムが考えられます。

Q
正解コード
# 名前を入力する
name = input("名前を入力してください: ")

# 年齢を入力する
age = input("年齢を入力してください: ")

# フォーマット文字列を使って、入力された名前と年齢を表示する
# ここでf-stringを使って、フォーマット文字列を活用しています
print(f"こんにちは、{name}さん。あなたは{age}歳ですね。")

正解例の詳細解説

非常にシンプルなコードのため解説はありません。

難しいと感じる方は上記の解説を見返してみてください。

<<前のページ

【Python学習記事のアイキャッチ画像】Lesson1-4 文字列を操作しよう

Pythonの記事一覧

Python学習カテゴリの親ページ用アイキャッチ画像(テキスト&問題集)、記事一覧へのリンク案内

次のページ>>

【Python学習記事のアイキャッチ画像】Lesson1-6 乱数を生成しよう

FAQ|Python学習の第一歩:f-string編

Q
Q1. f-stringとformat()はどう違うの?

f-stringはPython 3.6以降で使える新しい構文で、{}内に変数を直接書けて読みやすく、コードが簡潔になります。

Q
Q2. 小数点以下の桁数を指定したい時は?

f"{value:.2f}"のように書くと、小数点以下2桁で表示されます。他にも日付やゼロ埋めなど様々な整形が可能です。

Q
Q3. f-string内で計算式を使える?

はい、f"{a + b}" のように計算式も書けます。変数の中身を操作しながら表示できるのがf-stringの大きな利点です。

質問用コンタクトフォーム

この記事はAIを用いて書いた記事です。

人間の目による確認も行っていますが、もし間違い等ありましたらご指摘頂けると大変助かります。

Python記事一覧へ戻る
トップページへ戻る

記事URLをコピーしました