【发布时间】:2015-07-16 12:11:02
【问题描述】:
我想为工作中的销售团队创建一个收入计数器,并且很想使用 Python。例如。 Joe Bloggs 将他的目标从 22.1 转移到 23.1(相差 1.0)。我希望计数器在一小时内从 22.1 均匀地滴答到 23.1。
我创建了这个脚本,它可以很好地计算一分钟(每分钟运行 2 秒);但是,当它应该运行一个小时时,它运行了 47 分钟。
问题:有人知道为什么我把它设置为一个小时后它跑得更快吗? sleep.time 不准确吗?
import time
def rev_counter(time_length):
time_start = (time.strftime("%H:%M:%S"))
prev_pp = 22.1
new_pp = 23.1
difference = new_pp - prev_pp
iter_difference = (difference / 100000.) # Divide by 100,000 to show 10 decimal places
time_difference = ((time_length / difference) / 100000.)
i = prev_pp
while i < new_pp:
print("%.10f" % i)
i = i + iter_difference
time.sleep(time_difference)
time_end = (time.strftime("%H:%M:%S"))
print "Time started at", time_start
print "Time ended at", time_end
rev_counter(60) # 60 seconds. Returns 62 seconds
rev_counter(600) # 10 minutes. Returns 10 minutes, 20 secs
rev_counter(3600) # 1 hour. Returns 47 minutes
【问题讨论】:
标签: python python-2.7 time sleep