0
我正在創建一個IRC bot,並且希望能夠不斷從我的緩衝區接收數據,但同時如果我在控制檯中輸入命令,我希望它成爲很容易接受。到目前爲止,我有一個無限循環,不斷檢查IRC服務器的輸入緩衝區,但我不知道如何從控制檯接收輸入而不凍結其他所有內容。如何在不等待Python的情況下接受用戶輸入
我正在創建一個IRC bot,並且希望能夠不斷從我的緩衝區接收數據,但同時如果我在控制檯中輸入命令,我希望它成爲很容易接受。到目前爲止,我有一個無限循環,不斷檢查IRC服務器的輸入緩衝區,但我不知道如何從控制檯接收輸入而不凍結其他所有內容。如何在不等待Python的情況下接受用戶輸入
在這種情況下最好的做法是使用某種包含事件循環的UI庫。您可以輪詢此事件循環以查看發生的事情,包括按下按鍵和單擊鼠標。
如果你想在終端中做到這一點,有Urwid。如果你想這樣做的GUI有噸的系統可用,如:
其中更多,然後加載更多不是跨平臺的。
你需要線程來做到這一點,請參閱http://stackoverflow.com/questions/31340/how-do-threads-work-in-python-and-what-are-common-python-threading-specific-pit – Senjai
或具有事件處理的UI系統。 –