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ù)等價于
result = "%.2f" % Decimal
這種方法其實(shí)使用的是python的字符串格式化,但是當(dāng)Decimal為float類型的數(shù)據(jù)時,會自動進(jìn)行四舍五入。
另外,總感覺這種用法并不嚴(yán)謹(jǐn),可能在對某些特殊值進(jìn)行操作時,會出現(xiàn)錯誤,但目前還沒有發(fā)現(xiàn),如果有人發(fā)現(xiàn)問題,還望不吝指教。
python實(shí)現(xiàn)整數(shù)四舍五入
關(guān)于四舍五入的方法有很多種:從簡單到復(fù)雜依次為:
第一個方法
是利用浮點(diǎn)數(shù)轉(zhuǎn)整數(shù),后面的小數(shù)會自動刪除的原理,
讓小數(shù)去加0.5看能不能大于1.
num=float(input('輸入數(shù)值:'))
# 這個只能精確到后兩位,如果要更精準(zhǔn),小數(shù)后面多加幾個5就行了。
num+=0.55
num=int(num)
print(num)第二個方法
是用round函數(shù)來轉(zhuǎn)換,這個函數(shù)要小數(shù)位多一位才能進(jìn)行四舍五入。
a=float(input('輸入數(shù)值:'))
b=int(input("要保留幾位小數(shù):"))
a=round(a,b)
print(a)總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python實(shí)現(xiàn)進(jìn)度條和系統(tǒng)通知的示例詳解
這篇文章主要和大家分享兩個有意思的Python小工具,可以優(yōu)雅地實(shí)現(xiàn)進(jìn)度條和系統(tǒng)通知,文中的示例代碼簡潔易懂,有需要的小伙伴快也跟隨小編一起學(xué)習(xí)一下2023-11-11
Python 用Redis簡單實(shí)現(xiàn)分布式爬蟲的方法
本篇文章主要介紹了Python 用Redis簡單實(shí)現(xiàn)分布式爬蟲的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-11-11
Python函數(shù)基礎(chǔ)實(shí)例詳解【函數(shù)嵌套,命名空間,函數(shù)對象,閉包函數(shù)等】
這篇文章主要介紹了Python函數(shù)基礎(chǔ),結(jié)合實(shí)例形式詳細(xì)分析了函數(shù)嵌套,命名空間,函數(shù)對象,閉包函數(shù)等相關(guān)概念、原理、用法及操作注意事項,需要的朋友可以參考下2019-03-03

