小数点以下3単位が常に存在するように、いくつかのパーセンテージ値を埋めたいと思います。 intsでは '%03d'を使用できます-floatに相当するものはありますか?
'%.3f'は小数点以下で機能しますが、 '%03f'は何もしません。
'%03.1f'は機能します(1は任意の数値、または空の文字列にすることができます):
>>> "%06.2f"%3.3
'003.30'
>>> "%04.f"%3.2
'0003'
フィールド幅には10進数と小数桁が含まれることに注意してください。
または、.format
を使用する場合:
{:6.1f}
↑ ↑
| |
# digits to pad | | # of decimal places to display
{:6.1f}
使用例:
'Num: {:6.1f}'.format(number)
Zfillも使用できます。
str(3.3).zfill(5)
'003.3'
短い例:
var3= 123.45678
print(
f'rounded1 \t {var3:.1f} \n'
f'rounded2 \t {var3:.2f} \n'
f'zero_pad1 \t {var3:06.1f} \n' #<-- important line
f'zero_pad2 \t {var3:07.1f}\n' #<-- important line
f'scientific1 \t {var3:.1e}\n'
f'scientific2 \t {var3:.2e}\n'
)
出力を提供します
rounded1 123.5
rounded2 123.46
zero_pad1 0123.5
zero_pad2 00123.5
scientific1 1.2e+02
scientific2 1.23e+02