这是一段代码
numstring = str(15.555555)
num = float(numstring[:numstring.find('.')+4])
我知道上面的代码在num中存储15.555。 ' + 4'是什么?在上面的代码中指定?
答案 0 :(得分:0)
这:
numstring.find('.')
给出'.'
的第一个并发的索引。在你的情况下,它是唯一的并发。
我们称之为:
index = numstring.find('.')
然后,您将numstring
从开头(索引0)切换到index+4
。
这意味着你将'.'
之后的子字符串从开头变为4个字符,包括点本身,这意味着该点后面有3个小数。
所以:
"12.34567"
变为:
"12.345"
答案 1 :(得分:0)
虽然给出了很好的答案,但他们都在使用字符串转换。这是使用math
模块执行此操作的方法,该模块不需要字符串:
import math
number = 15.55555555
decimal_precision = 3
f = 10**decimal_precision
result = math.floor(number*f)/f
print(result)
# one liner
# result = math.floor(number*1000)/1000
输出:
15.555