ホームページ  >  記事  >  バックエンド開発  >  文字列の書式設定 (% 演算子)

文字列の書式設定 (% 演算子)

高洛峰
高洛峰オリジナル
2016-10-20 10:02:391607ブラウズ

文字列をフォーマットする機能は、C 言語や Fortran 言語のフォーマットされた入出力など、多くのプログラミング言語に含まれています。 Python で文字列をフォーマットするための組み込み演算子は「%」です。

テンプレート

文字列をフォーマットするとき、Python は文字列をテンプレートとして使用します。テンプレートには、実際の値用のスペースを確保し、実際の値が表示される形式を記述するフォーマッタがあります。 Python はタプルを使用して複数の値をテンプレートに渡します。各値はフォーマット文字に対応します。

たとえば、次の例:

print("I'm %s. I'm %d" % ('Pythontab', 1))

上記の例では、

"I'm %s私は %d です」がテンプレートです。 %s は、文字列を表す最初のフォーマット文字です。 %d は 2 番目のフォーマット文字で、整数を表します。 ('Pythontab',99) の 2 つの要素 'Pythontab' と 99 は、%s と %d を置き換える実際の値です。

テンプレートとタプルの間には、書式設定操作を表す % 記号があります。

「I'm %s. I'm %d」% ('Pythontab', 1) 全体は、実際には文字列式を構成します。通常の文字列と同じように変数に割り当てることができます。例:

a = "私は %s. 私は %d" % ('Pythontab', 1)

print(a)

結果は次のようになります: 私は Pythontab です

us 辞書は実数値を渡すためにも使用できます。次のように:

print("I'm %(name)s. I'm %(age)d" % {'name':'Pythontab', 'age':99})

ご覧のとおり、 2 つの形式文字に名前が付けられています。名前は()で囲みます。それぞれの名前は辞書のキーに対応します。

フォーマット文字

フォーマット文字は、実数値用のスペースを予約し、表示形式を制御します。フォーマット文字には、次のように、表示のタイプを制御するタイプ コードを含めることができます:

%s 文字列 (str() を使用して表示)

%r 文字列 (repr() を使用して表示)

%c 単一文字

%b 2 進整数

%d 10 進整数

%i 10 進整数

%o 8 進整数

%x 16 進整数

%e 指数 (基数は e と表記)

%E 指数 (基数は次のように表記) E)

%f 浮動小数点数

%F 浮動小数点数、上記と同じ

%g 指数 (e) または浮動小数点数 (表示長による)

%G 指数 (E) または浮動小数点数ポイント番号 (表示長による)

%% 文字 "%"

は、次の方法でさらに制御できます:

%[(name)][flags][width].[precision]typecode

(名前) は名前です

フラグには +、-、' '、または 0 を含めることができます。 + は右揃えを意味します。 - は左揃えを意味します。 ' ' はスペースです。これは、正の数の左側にスペースを埋めて、負の数と揃えることを意味します。 0 は 0 パディングを使用することを意味します。

width は表示幅を表します

precision は小数点以下の精度を表します

例:

print("%+10x" % 10)

print("%04d" % 5)

print(" %6.3f" % 2.3)

上記の幅と精度は 2 つの整数です。 * を使用して、これら 2 つの数量を動的に置き換えることができます。例:

print("%.*f" % (4, 1.2))

Python は実際には * を 4 に置き換えます。したがって、実際のテンプレートは「%.4f」です。

概要

Python の組み込み % 演算子を使用して、文字列操作をフォーマットし、文字列の表示形式を制御できます。 Python で文字列をフォーマットする方法は他にもありますが、% 演算子を使用するのが最も便利です。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。