有以下三种语句:
print("first time", time.time())
self.wait(5)
print("second time", time.time())
我想“第二次”和“第一次”之间的差是5秒,但是它们是一样的,为什么?
我认为self.wait(5)应该是异步调用,如果是的话,如何在运行时获取时间戳?
答案 0 :(得分:1)
如果您要在终端机中在动画的每个时刻打印确切的一秒,则可以执行以下操作(时间保存在变量self.time中):
class TimeTest(Scene):
def print_time(self):
print("Time:",self.time)
def construct(self):
dot=Dot()
# 0 seconds
self.print_time()
self.play(Write(dot,run_time=2))
# 2 seconds
self.print_time()
self.wait()
# 3 seconds
self.print_time()
self.play(dot.shift,UP,run_time=1)
# 4 seconds
self.print_time()
self.play(FadeToColor(dot,RED,run_time=3))
# 7 seconds
self.print_time()
self.wait()
# 8 seconds
self.print_time()