python 里面專門有一個(gè) round() 函數(shù)可以將任意的浮點(diǎn)數(shù)或者小數(shù)保留指定的位數(shù)。

成都創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站與策劃設(shè)計(jì),萊陽網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:萊陽等地區(qū)。萊陽做網(wǎng)站價(jià)格咨詢:18982081108
廢話不多說了,直接上一個(gè)例子。
目標(biāo):將 x = 34.4567809278 保留3位小數(shù)
結(jié)果 34.457
round(x,k) 中 x 為要處理的浮點(diǎn)數(shù), k 指要保留的位數(shù)
print(round(x)) #直接返回整數(shù)
浮點(diǎn)型(Float)
Python的浮點(diǎn)數(shù)就是數(shù)學(xué)中的小數(shù),類似C語言中的double。
在運(yùn)算中,整數(shù)與浮點(diǎn)數(shù)運(yùn)算的結(jié)果是浮點(diǎn)數(shù).
浮點(diǎn)數(shù)也就是小數(shù),之所以稱為浮點(diǎn)數(shù),是因?yàn)榘凑湛茖W(xué)記數(shù)法表示時(shí),一個(gè)浮點(diǎn)數(shù)的小數(shù)點(diǎn)位置是可變的,比如,1.23x109和12.3x108是相等的。浮點(diǎn)數(shù)可以用數(shù)學(xué)寫法,如1.23,3.14,-9.01,等等。但是對于很大或很小的浮點(diǎn)數(shù),就必須用科學(xué)計(jì)數(shù)法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以寫成1.2e-5,等等。
整數(shù)和浮點(diǎn)數(shù)在計(jì)算機(jī)內(nèi)部存儲(chǔ)的方式是不同的,整數(shù)運(yùn)算永遠(yuǎn)是精確的而浮點(diǎn)數(shù)運(yùn)算則可能會(huì)有四舍五入的誤差。
python提供了三種浮點(diǎn)值:內(nèi)置的float與complex類型,以及標(biāo)準(zhǔn)庫的decimal.Decimal類型。
float類型存放雙精度的浮點(diǎn)數(shù),具體取值范圍依賴于構(gòu)建python的c編譯器,由于精度受限,進(jìn)行相等性比較不可靠。
如果需要高精度,可使用decimal模塊的decimal.Decimal數(shù),這種類型可以準(zhǔn)確的表示循環(huán)小數(shù),但是處理速度較慢,適合于財(cái)政計(jì)算。
相關(guān)推薦:《Python基礎(chǔ)教程》
簡單函數(shù)比較floatS是否相等:
def equal_float(a,b):
return abs(a-b)=sys.float_info.epsilon
其中sys.float_info.epsilon是機(jī)器可以區(qū)分出的兩個(gè)浮點(diǎn)數(shù)的最小區(qū)別
math模塊提供了許多可用于floatS的函數(shù):
math.pi:常量3.1415926
math.pow(x,y):x的y次冪(浮點(diǎn)值)
……………….
使用math時(shí)先用import math導(dǎo)入該模塊
十進(jìn)制數(shù)字
decimal模塊可以提供固定的十進(jìn)制數(shù),精度可以自己定。要?jiǎng)?chuàng)建Decimal,要先用import decimal導(dǎo)入模塊。
十進(jìn)制數(shù)是用decimal.Decimal()函數(shù)創(chuàng)建的,該函數(shù)可以接受一個(gè)整數(shù)或字符串作為參數(shù),但不能以浮點(diǎn)數(shù)作參數(shù)。如果用字符串作為參數(shù),可以使用簡單的十進(jìn)制數(shù)表示或指數(shù)表示,另外,decimal.Decimal的精確表述方式可以可靠的進(jìn)行相等性比較。
(python3.1開始,使用decimal.Decimal from-float()函數(shù)將floats轉(zhuǎn)換為十進(jìn)制數(shù),以float型數(shù)作為參數(shù),并返回與該float最為接近的decimal.Decimal)
方法很多。
比如,可以用isinstance函數(shù)或type函數(shù)。
例子如下:
print(isinstance(1.,float))
print(type(1.)==float)
名稱欄目:python浮點(diǎn)函數(shù) python浮點(diǎn)函數(shù)的用法
URL地址:http://chinadenli.net/article42/hijdec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、網(wǎng)站制作、外貿(mào)網(wǎng)站建設(shè)、電子商務(wù)、網(wǎng)站設(shè)計(jì)、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)