1
嘿,我正在开发一个需要花费几分钟的操作的python项目。事情是,因为它需要几分钟我希望用户能够按回车看到行动的当前状态。我如何在Python 2中执行此操作?在输入操作?
嘿,我正在开发一个需要花费几分钟的操作的python项目。事情是,因为它需要几分钟我希望用户能够按回车看到行动的当前状态。我如何在Python 2中执行此操作?在输入操作?
@ Space_C0wb0y是对的,进度条是一个很好的解决方案。然而,这表明了一种做你所要求的方式。一些代码捏从这里:Non-blocking read on a subprocess.PIPE in python
import fcntl, os, sys
# make stdin a non-blocking file
fd = sys.stdin.fileno()
fl = fcntl.fcntl(fd, fcntl.F_GETFL)
fcntl.fcntl(fd, fcntl.F_SETFL, fl | os.O_NONBLOCK)
def enter_pressed():
data = sys.stdin.read(1)
return bool(data)
i = 0
while True:
i += 1
if enter_pressed():
print(i)
这是一个命令行项目或一个用户界面?你可以发布一些代码来启动后台任务吗? – pajton 2011-03-26 21:59:24
这是一个命令行项目。这是一个简单的端口扫描器。我只想让它写出用户按下输入时扫描的端口。 – Jmariz 2011-03-26 22:01:37
最简单的方法是使用我猜的线程。一个线程扫描端口,另一个等待用户输入。 – pajton 2011-03-26 22:04:03