私はタイマー(Python 3.6.0)を作ろうとしています。簡単なタイマーの他の投稿があることはわかっていますが、もっと複雑なタイマーを作りたいと思っています。ここに私のコードは次のとおりです。プログラムの実行中にPythonがwhileループを実行している間、どのようにリアルタイム入力を取得できますか?
import time
x = 0
run = input("Start timer? [Y]/[N]")
while run == 'Y':
time.sleep(1)
x += 1
print(x)
else:
print("end of code")
は、whileループを破る方法は、(タイマーを停止することができるように)はありますか?ユーザーがループを止めることができるように、 "x = 1"行の下に "in = input()"を入れると、ユーザーは毎秒入力を提供する必要があるため、タイマーはカウントを停止します。私が上記のコードを何らかの入力なしで実行すると、ループが継続するので、Pythonシェルに何も入力できません。この問題を解決する方法はありますか?
input()を実行しながらコードを実行するには、スレッドを使用する必要があります。これは非常に複雑になります。あなたはこれが本当に必要なのですか? –
http://stackoverflow.com/questions/3295938/else-clause-on-python-while-statement –
[こちら](http://stackoverflow.com/questions/40949738/implementing-a-timercountdown-that-あなた自身を始めるために役立つ、それ自体が重複しているゲームロジックと一緒に走るパラレル)。注:Alex Martelliのベースコピーは、異なるOSで動作するようになっているようです。 – roganjosh