[英]Formatting the printing of list concatenated with other variables
我有一個列表數據及其平均值 , 中位數和眾數 ,如下所示:
data = [2, 3, 5, 5, 7, -6, -6, 9]
mean = 2.00
median = 3.00
mode = [5, -6]
我想要結果的整潔的Pythonic輸出。 使用此處和此處建議的答案,我得出了以下代碼。
print('Mean:{0:9.2f}\nMedian:{1:7.2f}'.format(mean, median),
''.join('\nMode: {}: {}'.format(*k) for k in enumerate(mode)))
但是,我不確定這是否是一個好的解決方案,我的輸出看起來像這樣:
Mean: 2.38
Median: 4.00
Mode: 0: -6
Mode: 1: 5
我想要這樣的輸出:
Mean: 2.38
Median: 4.00
Mode: -6, 5
我只會使用標簽:
print('Mean:\t{}\nMedian:\t{}\nMode:\t{}'.format(mean,median,', '.join(str(i) for i in mode)))
贈送:
Mean: 2.0
Median: 3.0
Mode: 5, -6
使用str.ljust()
確保標題(例如Mean
, Median
)具有固定的長度:
TITLE_LENGTH = 10
print("Mean:".ljust(TITLE_LENGTH) + "{:.2f}".format(mean))
print("Median:".ljust(TITLE_LENGTH) + "{:.2f}".format(median))
print("Mode:".ljust(TITLE_LENGTH) + "{}: {}".format(mode[0], mode[1]))
輸出:
Mean: 2.00
Median: 3.00
Mode: 5: -6
format()
仍然可以如下使用:
data = [2, 3, 5, 5, 7, -6, -6, 9]
mean = 2.00
median = 3.00
mode = [5, -6]
print('Mean: {:.2f}\nMedian: {:.2f}\nMode: {}'.format(mean, median, ', '.join(map(str, mode))))
給你:
Mean: 2.00
Median: 3.00
Mode: 5, -6
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.