2013-05-07 122 views
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个浮动数字时,它们仍然以圆形数字打印。我如何得到这个权利?

回答

2

使用%f浮标。可以调整使用%.2f为2位或%.3f小数精度为三位数字等

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) 
2

%d格式化d ecimal整数。 %f格式化˚F高高飞翔:

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

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

0

你必须使用格式序列花车,不是整数,所以这样的:

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

应该是:

print "ADDING %f + %f" % (a, b) 
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