我正在运行一些代码,其中我希望用户插入将被计算并作为浮点值存储在变量中的分数。
我正在使用以下命令。当我提供诸如4.5
:
a = float(input('>> '))
但像3/4
之类的东西给了我一个错误。我知道问题是什么,我想知道是否有另一种方法来输入一个得到解决的分数并将其作为浮点存储在一个变量中。
答案 0 :(得分:2)
如Josh Lee所述,将其包裹在Fraction
(from fractions import Fraction
)中,然后将其投放到float
:
r = float(Fraction(input(">>> ")))
这个接受浮点数和字符串的形式为:
[sign] numerator ['/' denominator]
当然,您应该将其包装在try-except
中,以防止意外输入不符合该格式。