避免在python中使用小数部分

时间:2019-01-28 12:20:37

标签: python python-3.x decimal

Python中有一种方法可以避免数字结果为零时的小数部分?

当我想要a = 12b = 2时:

print(a/b)

要打印:

6   # not 6.0

,如果a = 13b = 2

6.5 # not 6

以一种通用的方式。

2 个答案:

答案 0 :(得分:1)

如果ba且无余数和普通除法,则可以使用下限除法。

data = [ (12,2),(13,2)]

for a,b in data:
    print(f"{a} / {b} = ",  a // b if (a//b == a/b) else a / b) 

输出:

12 / 2 = 6
13 / 2 = 6.5

这是一个三元条件语句(更多:Does Python have a ternary conditional operator?),其计算结果为a//b == a/b

a//b是floordiv,而a/b是普通div,只有当b除以a而没有余数(更多:What is the difference between '/' and '//' when used for division?)时,它们才相等。

答案 1 :(得分:0)

您可以使用int()/ round()方法。

print(int(a/b))