0
我正在編寫一個Python程序(在OS X/Linux上),其中用戶必須在while循環中輸入一些單詞。這是它的相關部分:輸入特定字符時停止Python輸入
i = 0
array = []
while (i < 10):
array.append(raw_input("Prompt: "))
i = i + 1
但是,只要用戶鍵入一個空格,而不需要按ENTER鍵,我想停止輸入。
我知道我不能用raw_input
這樣做,但是我沒有找到任何方法來實現我正在嘗試做的事情。基本上我希望用戶能夠輸入一個單詞,使用SPACE按鈕代替ENTER來輸入下一個單詞。
你有什麼想法嗎?提前致謝。
那麼你將不得不使用其他輸入法。 raw_input等待,直到eol/eod被掛起(例如,用戶命中返回)。您需要處理每個關鍵行程並檢查空格。 –
無論是'raw_input','input'還是'sys.stdin.read(1)'都不可能。沒有適用於每個操作系統的通用解決方案。 – pts
這幾乎是平臺特定的。 [看到這裏](http://stackoverflow.com/questions/510357/python-read-a-single-character-from-the-user) - 你也可以考慮使用類似tkinter的東西來處理類似的事件或重映射在輸入過程中輸入空格鍵的鍵 - 但可能比您要查找的內容更多,而且您可能(取決於)想要/需要爲各種鍵盤佈局調整參數。 – sytech