我是个大人物。我说的是a,b,c初学者。我正在上课,我正在做一个我完全坚持的项目。我写了这段代码,除了不准确外,其他的都还可以。我想我必须重写整个代码,但我想我会先试试你们。这是我的同龄人给我的唯一选择:(
===删除===
这使我的计时器工作,但不正确。我的问题是,正如您所看到的,递增1的同时,另一个变量是0。因为9和0是同时发生的,所以时钟就停止了。在这段代码中,我能做些什么来确保在x y或z之后发生+1,对于整个mill秒来说是0?我试过一些东西。没有什么是有效的,有有限的东西我可以访问(在时间(只有访问权时间。时间()),数学等模块)所以我希望你的答案将是真正的基础。在
我希望这有道理。在
这就是工作。 请注意,Python的精确度是非常有限的,如果您想获得一个更完美的计时器,您必须存储最后一个已知的毫秒(1/1000秒),并创建一个
while 1
循环来等待正确的时间,然后释放并继续start()
内的无休止的循环。大概是:
这将打印当前时间
^{pr2}$这与Python所能达到的精确度差不多。
对于解释部分:
x = datetime.datetime.utcnow()
将把当前时间存储在一个名为x
的变量中。在python中,变量是带有函数的“对象”。。而这个特殊的变量是一个名为strftime
的函数。strftime
接受一些参数,并将当前时间转换为您希望能够读取的字符串,在本例中,我们将创建%M
分钟,然后再创建{%f
,即毫秒。当然,它是基于您当前的时间,如果您需要计算某个东西已经运行了多长时间,您可以将
time.time() - self.time
添加到datetime.datetime
中,而不是{这是个秒表
代码几乎完全相同,唯一的区别是使用了存储“启动时间”的},因此操作将是:
self.time
,我们将用startup time
减去{这是修改后的代码,使其正确递增,并显示为psuedo计时器(分、秒和1/10秒)。 请注意,这不是一个真正的计时器,因为它只需要一秒钟来模拟5分钟的时间增量。(托克斯的回答实现了一个真正的计时器。)
相关问题 更多 >
编程相关推荐