在對浮點型資料進行輸出操作時,經常面臨著精度的問題,眾所周知,計算機裡面浮點數的精度一般是比較高的,而我們經常使用是保留小數點後兩位。
format函式為我們提供了格式化資料的方法,有關format的格式如下:
format(數值,「格式」)
格式是m.nf,m和n是整數,m表示整個數值佔多少位輸出,n表示小數點後保留幾位小樹
舉例:數值123.45678
print format(123.45678, 『0.2f』)
print format(123.45678, 』10.2f『)
輸出結果如下:
>>> print format(123.45678, '0.2f')
123.46
>>> print format(123.45678, '10.2f')
123.46
m.nf 如果m為0,表示僅考慮小數點後又幾位,不考慮輸出佔幾位;第二次m取值10,由於123.45僅有五位,所以輸出會縮排,也就是右對齊。注意小數點也算作一位。
在看下面一種情況
print format(123.45678,『3.2f』)
>>> print format(123.45678,'3.2f')
123.46
對於m的值過小,python為了保證資料的精確,會忽略m值,也就是將m值視為0.這樣就能準確輸出結果,而不是為了可以保證資料格式忽略資料的正確性。
format的另外乙個用法就是輸出百分比的數值。其語法格式如下:
format(數值,『m.n%』)
關於m和n的含義,和前面的一樣,%表示將要數值轉換成百分數。
舉例如下:
>>> print (format(0.5,'0.1%'))
50.0%
>>> print(format(0.4234,'3.1%'))
42.3%
同樣的如果遇到科學計數法呢,同樣可以使用format函式將%換成e就行,其他不變
Python學習 格式化輸出
1 格式化輸出的誤區 python會自動進行型別轉換 這句不是書上說的,我從測試結果中推測 驗證 python version 2.7.5 print the number 0.2 is u 0.2 the number 0.2 is 0 print the number 0.2 is u 5 th...
Python學習 格式化輸出
方式一 使用佔位符 常用佔位符 s s string 字串 d d digit 整數 十進位制 f f float 浮點數 name input 請輸入你的名字 age input 請輸入你的年齡 job input 請輸入你的職業 salary input 請輸入你的薪酬 if salary.is...
python格式化輸出
原文 在python中也有類似於c中的printf 的格式輸出標記。在python中格式化輸出字串使用的是 運算子,通用的形式為 格式標記字串 要輸出的值組 其中,左邊部分的 格式標記字串 可以完全和c中的一致。右邊的 值組 如果有兩個及以上的值則需要用小括號括起來,中間用短號隔開。重點來看左邊的部...