我的代码尝试将一个数字转换为例如X米Y厘米和Z毫米。我的代码可以正确地处理没有零的数字,如5782,但当涉及到带零的数字时,它将无法正常工作
这是我的代码:
a = 2200
b = a / 1000
print(float(b))
b = str(float(b)).split(".")
first = b[0]
print(first,b[1])
c = (float(b[1])/10)
print(c)
c = str(c).split(".")
print(c)
second = (c[0])
third = (c[1])
print("%s Meter %s centimeter %s milimeter"%(first,second,third))
结果必须像2米20厘米0毫米但是它给了我2米0厘米2毫米
我怎么才能解决这些家伙
真的,真的,真的不应该使用
int
到str
转换和split
方法来删除小数所以,我看到你们在做的是毫米到米,厘米,毫米。我要做的是使用
math.floor
删除小数点-使用整数除法:
用整数除法得到2200 mmmm(2)中的“满”米数,然后从
mm
值中减去2*1000,继续cm
,剩下的是mm
输出:
如果要省略零值,则需要条件打印:
相关问题 更多 >
编程相关推荐