我想在 min_time 和 m_time 之间生成一个小数点后 1 位的随机数,比如 0.3
现在我有一个非常古怪的解决方案
m_time = 0.5
min_time = 0.2
float(randint(int(min_time * 10), int(m_time * 10))) / 10
它有效,但我想知道是否有更好的解决方案?
import decimal
import random
-- i 和 j 像 2 和 3 一样属于你的极限
decimal.Decimal('%d.%d' % (random.randint(0,i),random.randint(0,j)))
我认为你所拥有的还不错。虽然你也可以这样写
0.1*randint(int(min_time * 10), int(m_time * 10))
另一个明显的选择是
round(random.random()*(m_time-min_time)+min_time, 1)