如何将作为分数输入的输入(例如," 4/2")转换为python 3.5中的整数?我尝试过使用以下两个代码:
b = int(input("Please enter a value for b of the quadratic equation: "))
b = int(float(input("Please enter a value for b of the quadratic equation: ")))
答案 0 :(得分:10)
答案 1 :(得分:2)
使用用于正则表达式re
的标准库,您可以测试分数的格式是否正确:
>>> import re
>>> fraction_pattern = re.compile(r"^(?P<num>[0-9]+)/(?P<den>[0-9]+)$")
然后:
>>> g = fraction_pattern.search('355/113')
>>> if g:
f = float(g.group("num"))/float(g.group("den"))
>>> f
3.1415929203539825
但与fractions
相比,它可能不是最快的,也不是最简单的解决方案...