1

while true でブレークが終了せず、最初に戻らないのはなぜですか?

while True:
    print('This is a quiz')
    print('What is your name?')
    Name = input()
    print('Hello ' + Name + ', The quiz will now begin')
    import time
    time.sleep(2)
    question1 = "Question one: "
    answer1 = "True" and "true"
    print(question1)
    qanswer = input()

    if qanswer != answer1:
        print('Sorry, the answer is: ' + answer1)
        break

    if answer1 == qanswer:
            print("Correct! Here's the next question")

私はPythonにかなり慣れていないので、用語の単なる誤用だと思います。

4

3 に答える 3

5

breakwhileループ全体に存在します。

continuewhile次の反復に戻ります。

break制御フロー ツールとcontinue公式ドキュメントの詳細を読むことができます: http://docs.python.org/2/tutorial/controlflow.html#break-and-continue-statements-and-else-clauses-on-loops

(他の人が正しく言及しているように、他のバグもあります)

于 2012-12-19T22:43:53.103 に答える
0
....
answer1 = ["True", "true"]
...
if not(qanswer in answer1):
    print('Sorry, the answer is: ' + answer1)
    break
else:
   print("Correct! Here's the next question")
于 2012-12-19T22:59:25.970 に答える
0

「break」ではなく「continue」キーワードを使用してください。

于 2012-12-19T22:44:45.277 に答える