2013-05-30 31 views
0

我正在創建一個IRC bot,並且希望能夠不斷從我的緩衝區接收數據,但同時如果我在控制檯中輸入命令,我希望它成爲很容易接受。到目前爲止,我有一個無限循環,不斷檢查IRC服務器的輸入緩衝區,但我不知道如何從控制檯接收輸入而不凍結其他所有內容。如何在不等待Python的情況下接受用戶輸入

+3

你需要線程來做到這一點,請參閱http://stackoverflow.com/questions/31340/how-do-threads-work-in-python-and-what-are-common-python-threading-specific-pit – Senjai

+0

或具有事件處理的UI系統。 –

回答

2

在這種情況下最好的做法是使用某種包含事件循環的UI庫。您可以輪詢此事件循環以查看發生的事情,包括按下按鍵和單擊鼠標。

如果你想在終端中做到這一點,有Urwid。如果你想這樣做的GUI有噸的系統可用,如:

  • 侏儒
  • GTK
  • KDE
  • 的Tcl/Tk
  • 的Qt4
  • Kivy

其中更多,然後加載更多不是跨平臺的。

相關問題