我正在努力将脚的值转换为1英尺= 12英寸的英寸。我用英寸来计算人的身高。恩。 5.11身高5英尺11英寸的人意味着总共71英寸。在Python中是否有任何方法,所以我可以分离int部分和&浮动部分的浮点数用于进一步计算?欢迎任何建议。
答案 0 :(得分:12)
要获取float的整数部分,请使用内置的int()
函数:
>>>int(5.1)
5
要分隔float部分,用整数减去float:
>>>5.1 - int(5.1)
0.1
或者你可以用1获得浮点数的模数(浮动部分):
>>> 5.1 % 1
0.09999999999999964 #use the round() function if you want 0.1
答案 1 :(得分:2)
对你而言,5.11
不是浮动。如果是,则意味着5.11英尺,即61.32英寸。
5.11
是一个字符串,包含两个数据和一个分隔符 - 将其解析为一个!如果您将分隔符更改为更传统的'
(即5'11
),很明显它不是一个浮点数:
raw = raw_input("Enter feet'inches")
feet, inches = map(int, raw.split("'", 1))
答案 2 :(得分:1)
另一种方法是使用divmod(函数或运算符),使用数字1作为分母(除数):
>>> divmod(5.11, 1)
(5.0, 0.11000000000000032)
>>> 5.11.__divmod__(1.)
(5.0, 0.11000000000000032)