如果在里面循环

use*_*982 1 python

again = True

while(again == True):

    yn = input("Do you want to do it again? (y or n)").lower()

    if(yn == 'y' or 'yes'):
        again == True
    elif(yn == 'n' or 'no):
        again == False
Run Code Online (Sandbox Code Playgroud)

如何使此代码有效?当我运行它时,它将永远是真实的.. = /

Ter*_*ryA 6

让我们从头开始:

while(again == True):

  1. 你不需要这里的括号

  2. 你不需要这个== True位.again就足够了,因为它的布尔值为True.

if(yn == 'y' or 'yes'):

  1. 再一次,不需要括号.

  2. 该行代码被翻译为if (yn == 'y') or ('yes'):.因为这将始终是真实的'yes'被认为是True(不是空字符串)

  3. 在python中,你需要做 if yn == 'y' or yn == 'yes':

  4. 或者你可以做到 if yn in ('y', 'yes')

again == True

  1. ==用于比较.=是为了作业

  2. 这发生在您的else块中.