[英]Unexpected print output for python string formatting
我想使用str.format
打印一些值。 但是,我得到了重復的第一個值,我不明白。 任何幫助將不勝感激。
for tel in ['T1', 'T2', 'T3', 'T4']:
print(tel+':{0:.2f}, {0:.2f}, {0:.2f}'.format(0.56, 0.12, 0.25))
這是因為{0:.2f}
中的零表示“索引 0 處的參數”,因此您始終調用相同的方法,只需將其刪除,它將按順序使用參數
for tel in ['T1', 'T2', 'T3', 'T4']:
print(tel + ':{:.2f}, {:.2f}, {:.2f}'.format(0.56, 0.12, 0.25))
花括號中的第一個條目是您在格式語句中引用的列表的索引。 因此,您總是通過說 {0:x} 來獲取第一個條目。 你需要做的是:
print(tel+':{0:.2f}, {1:.2f}, {2:.2f}'.format(0.56, 0.12, 0.25))
或者像 {:x} 一樣留空。
前面的數字:
在參數的索引format()
所以你選擇在這三個地方的第一個參數。 您應該使用{:.2f}
而不是{0:.2f}
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.