0
我正在python中运行3分钟的小型电脑游戏。这是一个控制台游戏。屏幕不会每隔几毫秒更新一次,但每隔几秒就会打印出新的信息,玩家必须在不同的选项中进行选择。在固定时间执行python程序
所以我需要的是,
- 能力3分钟计时之前运行的脚本
- 能够运行一个脚本整整3分钟。
- 在遍历定时部分时,能够准确知道剩余时间和剩余时间。
- 能够将控制权转移到另一个脚本,以等待3分钟后运行。
我正在python中运行3分钟的小型电脑游戏。这是一个控制台游戏。屏幕不会每隔几毫秒更新一次,但每隔几秒就会打印出新的信息,玩家必须在不同的选项中进行选择。在固定时间执行python程序
所以我需要的是,
那么我最终使用线程和锁定了它。
from datetime import datetime,timedelta
from threading import Thread, Lock
locker = Lock()
def printsomething(string):
if string.seconds:
print string.seconds,"seconds left"
else:
print "less than a second left"
def func():
start_time = datetime.now()
while True:
if locker.acquire(False):
printsomething(timedelta(seconds=180) - (datetime.now()-start_time))
raw_input("Continue? y/n")
locker.release()
else:
print "Thread ending"
return
t = Thread(target=func)
t.daemon = True
t.start()
t.join(180)
locker.acquire()
print "program ending"
不能被解决的唯一的事情是,这应该是3分钟运行脚本/ FUNC不只要3分钟结束退出。如果我知道答案,会更新答案。
听起来像一个项目,让我们知道它是如何去。 – jramirez
不是。真诚的不。在早期的比赛中进行了固定数量的更新,但这并没有给出最终比赛的前卫感。必须做一个基于时间的事情。 – tMJ
你是否真的需要单独的Python程序(“脚本”,你似乎指的是一个)?或者,整个系统可以是一个Python程序,用Python函数,模块等细分功能?如果你可以在一个Python程序中完成所有工作,它肯定会比试图管理多个Python程序的运行时更加简单和容易。 –