我正在python中制作一个IRC bot, 现在我想要一些控制台命令。while循环中的Python输入
主要功能是在while循环中,所以我不能把input_raw()
。有谁知道如何在不中断循环的情况下获得用户输入。
谢谢!
我正在python中制作一个IRC bot, 现在我想要一些控制台命令。while循环中的Python输入
主要功能是在while循环中,所以我不能把input_raw()
。有谁知道如何在不中断循环的情况下获得用户输入。
谢谢!
问题解决了,使用线程, 来源:FaceBot source
您可以尝试使用非阻塞套接字select
。喜欢的东西:
from sys import stdin
from select import select
while True:
print "Enter command> ",
# Add on_write sockets as necessary
on_read, _, _ = select([stdin], [], [], 5)
if on_read:
command = stdin.readline()
print "Now I can process you command..."
else:
print "No command, we can do here something else..."
使用线程。一个用于IRC处理,一个用于输入。 – orlp
非常感谢! – MichaelvdNet
我做了2个线程,1与IRC基地和一个= raw_input只是为了测试...但我不能做任何输入 – MichaelvdNet