之前遇到過(guò)很多種格式化輸出的形式,但是卻沒(méi)有清晰的梳理出來(lái)。今天是時(shí)候我們做一個(gè)了斷了。
- 數(shù)字的四舍五入-round()函數(shù)
#第二個(gè)參數(shù)是保留的小數(shù)位數(shù)
round(1.23,1)
round(1.234354,3)
#為負(fù)數(shù)指的是向哪一位進(jìn)行四舍五入
round(13344,-1)
round(132423,-4)```
2. 精確的表示浮點(diǎn)數(shù)-decimal模塊
主要是用在金融領(lǐng)域
from decimal import Decimal
a = Decimal('5.3')
b = Decimal('2.12')
print(a+b)
c = 5.3
d = 2.12
print((a+b) == 7.4)
decimal模塊允許控制計(jì)算的每一個(gè)方面
首先創(chuàng)建本地上下文并且更改它的設(shè)置
進(jìn)入一個(gè)本地上下文
from decimal import localcontext
with localcontext() as ctx:
ctx.prec = 3
print(a/b)
with localcontext() as ctx:
ctx.prec = 50
a = Decimal('1.3')
b = Decimal('1.7')
print(a/b)```
- 數(shù)字的格式化輸出
還是format好用
- format形式
x = 1234.5454
print(format(x,'0.2f'))
#向右對(duì)齊
print(format(x,'>10.1f'))
#向左對(duì)齊
print(format(x,'<10.1f'))
print(format(x,'^10.1f'))
print(format(x,','))
print(format(x,'0,.1f'))```
- 另一種format - str.format()
print('the value is {:0,.2f}'.format(x))```
- %來(lái)格式化數(shù)字
print('%0.2f'% x)
print('%10.1f'% x)
#左對(duì)齊
print('%-10.1f' % x)```