python任务:以美元和美分的价格

时间:2017-09-27 10:16:46

标签: python python-3.x

作为输入,我有一个数字,以美元和美分的价格(例如:10.35)我需要打印美元和美分(基于上面的例子:10 35)。 (输入10.09 - 输出10 09 我创建了代码:

from math import floor, trunc
a = float(input())
r = trunc(a)
k = trunc(a * 100)
k = (k % 100)
if k <= 9:
    print(r, "%02d" % (k,))
else:
    print(r, k)

但是,当我在自动测试仪上测试时,其中一个条件不起作用。我无法在测试中看到输入,请你告诉我哪里有错误?

2 个答案:

答案 0 :(得分:0)

如果输入是一个字符串10.35(在我看来),你也可以尝试以下(我知道你不是在问这个,但它可能会有所帮助):

a = string(input())
b = a.split(".")
res = b[0] + " " + b[1]

print(res)

输出:

10 35

答案 1 :(得分:0)

你应该测试函数而不是脚本。问题可能是由于没有正确的测试造成的。

试试这个:

from math import trunc


def to_new_format(price):
    dolar_part = trunc(price)
    cent_part = round(((price % 1) * 100), 3)
    return "%i %i" % (dolar_part, cent_part)


input_price = float(input())
print(to_new_format(input_price))