Python-小數(shù),字符串常用格式處理

參數(shù)格式化

  • 字符串的參數(shù)使用{NUM}進(jìn)行表示,0, 表示第一個參數(shù),1, 表示第二個參數(shù), 以后順次遞加;使用":", 指定代表元素需要的操作, 如":.3"小數(shù)點三位, ":8"占8個字符空間等;還可以添加特定的字母, 如:
    • 'b' - 二進(jìn)制. 將數(shù)字以2為基數(shù)進(jìn)行輸出.
    • 'c' - 字符. 在打印之前將整數(shù)轉(zhuǎn)換成對應(yīng)的Unicode字符串.
    • 'd' - 十進(jìn)制整數(shù). 將數(shù)字以10為基數(shù)進(jìn)行輸出.
    • 'o' - 八進(jìn)制. 將數(shù)字以8為基數(shù)進(jìn)行輸出.
    • 'x' - 十六進(jìn)制. 將數(shù)字以16為基數(shù)進(jìn)行輸出, 9以上的位數(shù)用小寫字母.
    • 'e' - 冪符號. 用科學(xué)計數(shù)法打印數(shù)字, 用'e'表示冪.
    • 'g' - 一般格式. 將數(shù)值以fixed-point格式輸出. 當(dāng)數(shù)值特別大的時候, 用冪形式打印.
    • 'n' - 數(shù)字. 當(dāng)值為整數(shù)時和'd'相同, 值為浮點數(shù)時和'g'相同. 不同的是它會根據(jù)區(qū)域設(shè)置插入數(shù)字分隔符.
  • '%' - 百分?jǐn)?shù). 將數(shù)值乘以100然后以fixed-point('f')格式打印, 值后面會有一個百分號.
  • 數(shù)字(0, 1, ...)即代表format()里面的元素, 所以可以使用"."調(diào)用元素的方法;
age = 25
name = 'Caroline'

print('{0} is {1} years old. '.format(name, age)) #輸出參數(shù)
print('{0} is a girl. '.format(name))
print('{0:.3} is a decimal. '.format(1/3)) #小數(shù)點后三位
print('{0:_^11} is a 11 length. '.format(name)) #使用_補(bǔ)齊空位
print('{first} is as {second}. '.format(first=name, second='Wendy')) #別名替換
print('My name is {0.name}'.format(open('out.txt', 'w'))) #調(diào)用方法
print('My name is {0:8}.'.format('Fred')) #指定寬度

小數(shù)格式處理

  • round()
    • 一定要注意它不是簡單的四舍五入,而是ROUND_HALF_EVEN的策略。一般不介意使用
      • round()如果只有一個數(shù)作為參數(shù),不指定位數(shù)的時候,返回的是一個整數(shù),而且是最靠近的整數(shù)(這點上類似四舍五入)。但是當(dāng)出現(xiàn).5的時候,兩邊的距離都一樣,round()取靠近的偶數(shù),這就是為什么round(2.5) = 2。當(dāng)指定取舍的小數(shù)點位數(shù)的時候,一般情況也是使用四舍五入的規(guī)則,但是碰到.5的這樣情況,如果要取舍的位數(shù)前的小樹是奇數(shù),則直接舍棄,如果偶數(shù)這向上取舍??聪旅娴氖纠?/p>

round(2.635, 2)
2.63
round(2.645, 2)
2.65
round(2.655, 2)
2.65
round(2.665, 2)
2.67
round(2.675, 2)
2.6
```

  • math模塊的ceil(x) 取大于或者等于x的最小整數(shù)。

  • math模塊的floor(x) 去小于或者等于x的最大整數(shù)。

>>> from math import ceil, floor
>>> round(2.5)
2
>>> ceil(2.5)
3
>>> floor(2.5)
2
>>> round(2.3)
2
>>> ceil(2.3)
3
>>> floor(2.3)
2
>>>
  • 使用格式化

    • 效果和round()是一樣的。

a = ("%.2f" % 2.635)
a
'2.63'
a = ("%.2f" % 2.645)
a
'2.65'
a = int(2.5)
a
2

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 內(nèi)置函數(shù)Python解釋器內(nèi)置了許多功能和類型,總是可用的。他們是按字母順序列在這里。 abs(x)返回一個數(shù)的絕...
    uangianlap閱讀 1,375評論 0 0
  • longaaaa =14200666; Console.WriteLine(aaaa.ToString("N0")...
    魚落于天閱讀 1,051評論 0 1
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,680評論 19 139
  • 與先生的緣分,說來也好笑。起因是這樣的,我于某嘩眾取寵的大咖的文章中,批判了幾句,竟惹出一只忠心護(hù)主惡犬,他說惡心...
    買金礦閱讀 650評論 17 27
  • 盛曉枚姊妹的每首歌我都特別喜歡,我都關(guān)注了。比如【常常喜樂】 【毛毛蟲】【有一天】。一個會唱歌的生命,不是...
    靜如初夏閱讀 922評論 0 0

友情鏈接更多精彩內(nèi)容