python實(shí)現(xiàn)四舍五入方式
python實(shí)現(xiàn)四舍五入
""" 四舍五入 :param - dicmal:需要四舍五入的小數(shù) - n:需要保留的位數(shù),默認(rèn)保留小數(shù)點(diǎn)后兩位 """ def round_up(dicmal, n=2): format_str = "%."+str(n)+"f" return format_str % dicmal
上面的函數(shù)等價(jià)于
result = "%.2f" % Decimal
這種方法其實(shí)使用的是python的字符串格式化,但是當(dāng)Decimal為float類型的數(shù)據(jù)時(shí),會(huì)自動(dòng)進(jìn)行四舍五入。
另外,總感覺這種用法并不嚴(yán)謹(jǐn),可能在對(duì)某些特殊值進(jìn)行操作時(shí),會(huì)出現(xiàn)錯(cuò)誤,但目前還沒有發(fā)現(xiàn),如果有人發(fā)現(xiàn)問題,還望不吝指教。
python實(shí)現(xiàn)整數(shù)四舍五入
關(guān)于四舍五入的方法有很多種:從簡(jiǎn)單到復(fù)雜依次為:
第一個(gè)方法
是利用浮點(diǎn)數(shù)轉(zhuǎn)整數(shù),后面的小數(shù)會(huì)自動(dòng)刪除的原理,
讓小數(shù)去加0.5看能不能大于1.
num=float(input('輸入數(shù)值:')) # 這個(gè)只能精確到后兩位,如果要更精準(zhǔn),小數(shù)后面多加幾個(gè)5就行了。 num+=0.55 num=int(num) print(num)
第二個(gè)方法
是用round函數(shù)來轉(zhuǎn)換,這個(gè)函數(shù)要小數(shù)位多一位才能進(jìn)行四舍五入。
a=float(input('輸入數(shù)值:')) b=int(input("要保留幾位小數(shù):")) a=round(a,b) print(a)
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
基于Flask+websocket實(shí)現(xiàn)一個(gè)在線聊天室
在今天的互聯(lián)網(wǎng)時(shí)代,實(shí)時(shí)通信成為了許多應(yīng)用和服務(wù)的核心特色,在本文中,我們將介紹如何使用 Flask 和 Websockets 通過 Flask-SocketIO 框架創(chuàng)建一個(gè)簡(jiǎn)單的在線聊天室,感興趣的可以跟隨小編一起了解下2023-09-09Python之csv文件從MySQL數(shù)據(jù)庫導(dǎo)入導(dǎo)出的方法
今天小編就為大家分享一篇Python之csv文件從MySQL數(shù)據(jù)庫導(dǎo)入導(dǎo)出的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-06-06Python3中str、bytes、bytearray轉(zhuǎn)化
本文主要介紹了Python3中str、bytes、bytearray轉(zhuǎn)化,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04python實(shí)現(xiàn)得到一個(gè)給定類的虛函數(shù)
這篇文章主要介紹了python實(shí)現(xiàn)得到一個(gè)給定類的虛函數(shù)的方法,以wx的PyPanel類為例講述了打印以base_開頭的方法的實(shí)例,需要的朋友可以參考下2014-09-09python實(shí)現(xiàn)AHP算法的方法實(shí)例(層次分析法)
這篇文章主要給大家介紹了關(guān)于python實(shí)現(xiàn)AHP算法(層次分析法)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09