f文字列の中の「:>10,」はどういう意味?


こんにちは、ゆうせいです。
今回は、Pythonでよく使われる「f文字列(フォーマット文字列)」の中でも、ちょっと見慣れない書き方をしている以下のコードについて、しっかり解説していきます!


f文字列の中の「:>10,」はどういう意味?

まずはコードを確認しましょう。

print(f'{quantity} pieces {price:>10,} yen')

このコードは、quantityprice という変数の値を使って、フォーマットされた文字列を表示しています。

結論から言うと:

この部分 f'{price:>10,}' は、

  • price という数値を
  • カンマ区切りで
  • 右寄せで」
  • 10文字ぶんの幅を使って」

表示しなさい、という意味になります。


それぞれの記号の意味を分解!

記号意味
:フォーマットの開始f'{price:...}'
>右寄せ数字を右側に寄せる
10幅10文字10桁分のスペースを確保する
,3桁ごとのカンマ区切り1000000 → 1,000,000

例で確認してみよう!

たとえば、以下のような変数があったとします:

quantity = 3
price = 150000

すると、

print(f'{quantity} pieces {price:>10,} yen')

の出力はこうなります:

3 pieces 150,000 yen


150,000 の部分が 10文字分 のスペースで表示され、右に寄せられています。


表で整理

表現意味
{price}単純に数値をそのまま表示
{price:,}カンマ区切りで表示
{price:10}10文字分の幅で表示(左寄せ)
{price:>10}10文字分の幅で右寄せ表示
{price:>10,}カンマ付きで10文字ぶんの幅を取り右寄せ表示

ちょっとした応用:左寄せ・中央寄せ

他にもこんな書き方があります:

  • <:左寄せ
  • ^:中央寄せ
f'{price:<10,}'  # 左寄せでカンマ付き
f'{price:^10,}'  # 中央寄せでカンマ付き

数式に例えると…

このような文字列整形は、
「出力 = 整形関数(変数)」という関係になります。

たとえば:

表示文字列 = format(price, ">10,")

これは Python の format() 関数の中で、
「10桁右寄せ+カンマ付き」というフォーマットルールを指定している、ということですね。


最後に:どう活かせばいい?

この書き方は、以下のような場面でとても便利です:

  • 売上リストなど、金額をキレイに揃えて見せたいとき
  • 表形式で出力を整えたいとき
  • 桁数の大きな数値を読みやすく表示したいとき

今後の学習のヒント

  • f文字列 の他のフォーマットオプションも調べてみよう(例えば .2f で小数点2桁など)
  • format() 関数との違いも体験してみよう
  • 表形式で整えた出力をターミナルやファイルに出力する方法も学ぶと◎

他にもわからないコードがあったら、どんどん聞いてくださいね!

セイ・コンサルティング・グループの新人エンジニア研修のメニューへのリンク

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。