我想在python中創建一個非常簡單的程序,它需要從用戶讀取輸入並相應地寫入輸出。我需要類似這樣的輸出:在python中分開讀取和寫入
$./program.py
say something: Hello World
result: hello world
的事情是,我需要無限期地讀取輸入,每次用戶輸入數據我想使印刷數據不會妨礙輸入提示。更好的是不打印新行,保留上面的輸出:一行閱讀,另一行寫作。
我嘗試過使用curses,但我不想要使用孔屏幕,只是兩條線。
我想在python中創建一個非常簡單的程序,它需要從用戶讀取輸入並相應地寫入輸出。我需要類似這樣的輸出:在python中分開讀取和寫入
$./program.py
say something: Hello World
result: hello world
的事情是,我需要無限期地讀取輸入,每次用戶輸入數據我想使印刷數據不會妨礙輸入提示。更好的是不打印新行,保留上面的輸出:一行閱讀,另一行寫作。
我嘗試過使用curses,但我不想要使用孔屏幕,只是兩條線。
我相信這是你想要什麼:
import colorama
colorama.init()
no = 0
while True:
user_input = str(raw_input('\033[2A'*no + '\033[KSay something: '))
print '\033[KResult: ' + user_input
no = 1
這怎麼看起來輸入字符串後:
這個實現在Windows上工作,但是,如果你使用Linux,如果我不是這些誤認爲是沒有必要的:
import colorama
colorama.init()
編輯:修改我的代碼位,所以它不會覆蓋了代碼執行之前打印的文本。還添加了工作實施的圖像。
你可以做veeeery簡單的一招:
from os import system
while True:
system('clear') # or 'cls' if you are running windows
user_input = input('say something:')
print('result: ' + user_input)
input()
每次在第一行打印一個字符時,它應該在第二行中回顯? – Gabriel