0

我刚开始学习 Python (2.7),我有一个问题。

首先我的代码:

def add(a, b):
    print "ADDING %d + %d" % (a, b)
    return a + b

number_a = float(raw_input())
number_b = float(raw_input())

add(number_a, number_b)

如您所见,我想要求用户给我 2 个浮动数字,然后添加它们并打印解决方案。但是当我输入 2 个浮点数时,它们仍然打印为四舍五入的数字。我怎样才能做到这一点?

4

5 回答 5

2

用于%f花车。%.2f您可以使用2 位或%.3f3 位等来调整小数精度。

def add(a, b):
    print "ADDING %.2f + %.2f" % (a, b)
    return a + b

number_a = float(raw_input())
number_b = float(raw_input())

add(number_a, number_b)
于 2013-05-07T13:14:14.100 回答
2

%d格式化一个十进制整数。%f格式化浮点数

def add(a, b):
    print "ADDING %f + %f" % (a, b)
    return a + b
于 2013-05-07T13:14:15.123 回答
0

使用浮点格式字符串%f而不是整数%d

于 2013-05-07T13:14:29.623 回答
0

您必须对浮点数使用格式化序列,而不是整数,所以:

print "ADDING %d + %d" % (a, b)

应该:

print "ADDING %f + %f" % (a, b)
于 2013-05-07T13:14:44.150 回答
0
def add(a, b):
    print "ADDING {0} + {1}".format(a, b)
    return a + b

>>> add(1, 2)
ADDING 1 + 2
3
>>> add(1.5, 3)
ADDING 1.5 + 3
4.5
于 2013-05-07T13:15:18.213 回答