从python中的数字中删除句点

时间:2016-07-23 17:24:58

标签: python

给定0到1之间的实数(例如0.2836)我想只返回没有点的数字(例如在这种情况下从0.2836 - > 2836或02836)。我试图用python来做这件事,但我刚刚开始,我需要一些帮助。

2 个答案:

答案 0 :(得分:4)

只要你有一个号码,就应该做到:

>>> number = 0.2836
>>> int(str(number).replace('.', ''))
2836

如果在字符串中找不到.here只返回原始字符串。

有更多数字:

>>> int(str(1).replace('.', ''))
1
>>> int(str(1.2).replace('.', ''))
12

答案 1 :(得分:0)

从条带中删除不需要的字符的最简单方法是使用空字符串作为第二个参数调用其.replace方法:

x = str(123.45)
x = x.replace('.','')
print(x)                 # Prints 12345

注意,这会留下任何前导零(即0.123使用此方法会导致0123

如果你知道小数点后总是有4个数字(如果有更少的数字,你想要尾随零),你可以先用一个合适的因子乘以数字:

x = 123.4567
x *= 10000
x = str(int(x))          # Convert float to integer first, then to string
print(x)                 # Prints 1234567

还有其他选择,但这可能会指向正确的方向。