1

数値があり、パディングがゼロで特定の長さの文字列にフォーマットしたいと考えています。固定長が 22 の場合、この方法で実行できることがわかっているとします

 format(variable,"%022d")

しかし、これによってできる方法はありますか

length = 22
format(variable,"%0lengthd")

% variable d式で変数を使用する必要があることを意味します

ありがとう

4

3 に答える 3

4

はい、内部で文字列の書式設定を使用して:

length = 22
format(variable,"%0{}d".format(length))

実際、おそらく、次の 1 回の呼び出しでこのすべてを実行できますstr.format()

length = 22
"{0:{1}}".format(variable, length)
于 2013-09-14T02:40:00.320 に答える
3

古典的な文字列補間でさえこれをサポートしています:

>>> variable = 100
>>> length = 22
>>> print "%0*d" % (length,variable)
0000000000000000000100

この回答で詳細を参照してください: variable length of %s with the % operator in python

于 2013-09-14T03:05:28.030 に答える