キーボード入力を終了したい場合(例:enter)、実際に入力する必要がありますinput()
を使用して、ユーザーから:
while True:
user_input = input("Press enter to quit")
if user_input == "":
break
これは、ユーザーを待ち、彼らはちょうどenter
を打つ場合は解除されます。あなたが入力するまで、毎秒「終了しEnterキーを押し、」印刷するスクリプトのための非ブロック入力(例をしたい場合は
def blink():
user_input = input("Press enter to quit")
if user_input == "":
return True
return False
done = False
while not done:
done = blink()
:あなたはメソッドからそれを実行したい場合は、そのメソッドが値を返す必要があります(「\ rは」)あなたはmsvcrt
(Windowsのみ)を使用することができます押されて:奇妙なバグを引き起こす可能性があります、しかし
from time import sleep
import msvcrt
def blink():
print('Hit enter to quit')
if msvcrt.kbhit():
if msvcrt.getch() == "\r":
return True
return False
done = False
while not done:
done = blink()
sleep(1)
を心の時間と、非ブロッキング(非同期として知られている)行動に保つとしない限り避けるべきです
あなたの回答をありがとうございます。ループを壊すことはできません。 – PythonLearner