我目前的輸入法是for循環。我輸入一個整數,它被添加到列表中,然後它轉到下一個輸入。這會在每次執行時產生一個新行。我想將輸入條目保留在同一位置。我對Python和編程一般都不熟悉,所以我不知道從哪裏開始。我輸入語句是這種形式:如何將我的輸入保持在同一屏幕位置?
var= input(" message: ")
謝謝
我目前的輸入法是for循環。我輸入一個整數,它被添加到列表中,然後它轉到下一個輸入。這會在每次執行時產生一個新行。我想將輸入條目保留在同一位置。我對Python和編程一般都不熟悉,所以我不知道從哪裏開始。我輸入語句是這種形式:如何將我的輸入保持在同一屏幕位置?
var= input(" message: ")
謝謝
TL;博士:還有一個原因,最簡單的應用程序不這樣做:它是不是很回報了很多工作。
如果您正在討論確保"message: "
行總是出現在窗口中的相同位置,那麼您不能使用普通的input
:它不需要「行結束」參數和實際上,換行發生在輸入獲取輸入字符串之前。 (當用戶點擊RETURN
IE瀏覽器。)
您可以做到這一點,特別是如果你不關心Windows下使用,getch
模式,基本上說,終端通過字符你,而不是整行,你需要決定如何解釋它們。 getch package似乎可以在這裏幫助,它甚至支持Windows!
另一種選擇(當你需要的是手術刀時,可能效果不是很好,或者是核彈)就是使用類似curses或者terminal.location這樣的東西。我相信,祝福包含ANSI轉義字符。 (正如在the other answer中提到的這個問題,這可能是正確的做法。)
如果您使用的是UNIX或Windows終端,則可以添加一個ASCI轉義("\033[A"
)將光標向上移動一行以提問再次輸入,如example here所示,所以通過這種方式,您可以通過「覆蓋」前一個輸入消息在相同位置獲得輸入消息。
你不清楚你想達到什麼目的? –
你能解釋一下'我想把輸入條目保存在同一位置'嗎? – VooDooNOFX