在Python中,我想分兩個數字,如果答案不是整數,我希望數字四捨五入到上面的數字。
例如100/30不給33.3但給任何人都可以建議如何做到這一點?謝謝。Python3.3四捨五入
1
A
回答
2
您可以使用Python有數學庫的小區功能,但你也可以看看爲什麼在邏輯上
a = int(100/3) # this will round down to 3
b = 100/3 # b = 33.333333333333336, a and b are not equal
so we can generalize into the following
def ceil(a, b):
if (b == 0):
raise Exception("Division By Zero Error!!") # throw an division by zero error
if int(a/b) != a/b:
return int(a/b) + 1
return int(a/b)
+1
謝謝你已完美的工作,我現在也理解邏輯。 – user3130576
+0
@ user3130576你可能想檢查的一個額外的情況是,b不能是0,我忘了這麼做,讓我再次更新它:) – JoeC
7
可以使用math.ceil()
功能:
>>> import math
>>> math.ceil(100/33)
4
+0
請注意,如果問題是關於Python 2的,那麼您需要輸出結果:'int(math.ceil(float(100)/ 33))'。這是從2更改爲3. –
相關問題
- 1. .Net:number.ToString四捨五入
- 2. 四捨五入TSQL
- 3. summary()四捨五入
- 4. \(Double)四捨五入
- 5. sprintf四捨五入
- 6. Javascript - 四捨五入
- 7. Java四捨五入
- 8. Convert.ToSingle四捨五入
- 9. parseFloat四捨五入
- 10. 四捨五入HTML表身
- 11. setitimer在Linux四捨五入?
- 12. .NET四捨五入幫助
- 13. sqlite四捨五入'錯誤'
- 14. 四捨五入至整數
- 15. 在VB.NET中四捨五入
- 16. 數字四捨五入
- 17. XSL四捨五入問題
- 18. awk。四捨五入師
- 19. 四捨五入操作
- 20. 四捨五入到VB.NET
- 21. linq.sum被四捨五入
- 22. 四捨五入JavaScript變量
- 23. 四捨五入數字
- 24. Python四捨五入錯誤?
- 25. PHP完美四捨五入
- 26. 四捨五入輪廓
- 27. Oracle日期四捨五入
- 28. DecimalFormat的四捨五入
- 29. sprintf的四捨五入
- 30. 四捨五入數字
什麼約'-100/33'? '-3'還是'-4'? –
「10/9.9999」呢? '1'還是'2'? –