ここで何かが足りないのかもしれませんが、検索した結果、答えが見つかりませんでした。
私はかなりの数のPythonプロジェクトを調査しましたが、私が気づいていることの1つは、大部分のプロジェクト%
が新しい推奨される.format()
方法ではなく、演算子を文字列のフォーマットに引き続き使用しているという事実です。これには理由がありますか?何かを完全に見逃していない限り、それは些細な変更のように思えます。
例えば:
# count how many times the % operator technique is used
find . -name "*.py" -exec grep -HE "\"[^\"]+\"\s\%\s\w+|'[^']+'\s\%\s\w+" {} \; | wc -l
# and the same for format()
find . -name "*.py" -exec grep -HE "\w+\.format\(" {} \; | wc -l
# Results:
#
# % operator format()
# iPython 670 63
# Django 977 8
# Tornado 91 0
# requests 25 1
この質問の真の理由はなく、好奇心が強いだけです。
乾杯!
%
がより効率的で、単純な文字列置換の冗長性が低くなります。私はほとんどの時間のそれを使用し、私は私がのために行くのフォーマットより強力な必要がある場合.format
.format()
メソッドがある前に書かれたコードも持っている?