将来の3.xへの移行を容易にするために、最終的に2.xコードで文字列フォーマット演算子に切り替えまし%
た。-スタイルのフォーマットがPy3に残っている.format()
だけでなく、標準ライブラリコードで広く使用されていることを知って少し驚きました。書くのは少し短く、おそらく理解しやすい%
ので、それは論理的なようです。しかし、私はまだ疑問です。コードで両方のアプローチを使用するのは適切ですか(pythonic?)?ありがとうございました。'(%s)' % variable
'({})'.format(variable)
25681 次
2 に答える
28
Python 3.2 のドキュメントによると、%
最終的にはなくなるでしょう。
http://docs.python.org/3.2/tutorial/inputoutput.html#old-string-formatting
は非常に新しいため
str.format()
、多くの Python コードでまだ%
演算子が使用されています。ただし、この古いスタイルのフォーマットは最終的に言語から削除されるため、str.format()
通常は を使用する必要があります。
しかし、@regilero が言うように、この文は 3.3 から削除されています。これは、実際にはそうではないことを示唆している可能性があります。同じことを示唆するいくつかの会話がここにあります。
Python 3.4 の時点で、パラグラフ 7.1.1 には次のように書かれています。
% 演算子は、文字列の書式設定にも使用できます。これは、右引数に適用される sprintf() スタイルのフォーマット文字列のように左引数を解釈し、このフォーマット操作の結果の文字列を返します。
Python 3.4 4.7.2 printf スタイルの文字列フォーマットも参照してください。
于 2013-02-07T14:50:58.157 に答える