初级python循环

初级python循环,python,python-3.x,Python,Python 3.x,python新手,在尝试使循环工作时,拥有它可能是一个基本问题 我以前读过一些类似的问题,但找不到有效的解决方案 我只是想在脚本中问同样的问题,直到提到列出的猫名。因此,如果输入不在宠物列表中的“Scott”这样的名称,它将要求再次尝试输入宠物名称 myPets = ['Zophie', 'Pooka', 'Fat-tail'] print('Enter a pet name.') name = input() if name not in myPets: print('I do not

python新手,在尝试使循环工作时,拥有它可能是一个基本问题

我以前读过一些类似的问题,但找不到有效的解决方案

我只是想在脚本中问同样的问题,直到提到列出的猫名。因此,如果输入不在宠物列表中的“Scott”这样的名称,它将要求再次尝试输入宠物名称

myPets = ['Zophie', 'Pooka', 'Fat-tail']
print('Enter a pet name.')
name = input()
if name not in myPets:
    print('I do not have a pet named ' + name + ' try again')

else:
    print(name + ' is my pet.')

是您需要的关键字。使用循环
它可以帮助您在满足条件时重复一组语句(即,直到出现新的情况,例如输入的名称是您的宠物之一)。

您还可以将输入消息作为参数传递给input()方法


是您需要的关键字。使用循环
它可以帮助您在满足条件时重复一组语句(即,直到出现新的情况,例如输入的名称是您的宠物之一)。

您还可以将输入消息作为参数传递给input()方法


您可以使用
while
循环重复,直到用户输入正确的输入。使用
中断
退出循环

myPets = ['Zophie', 'Pooka', 'Fat-tail']
while True:
    print('Enter a pet name.')
    name = input()
    if name not in myPets:
        print('I do not have a pet named ' + name + ' try again')
    else:
        print(name + ' is my pet.')
        break

您可以使用
while
循环重复,直到用户输入正确的输入。使用
中断
退出循环

myPets = ['Zophie', 'Pooka', 'Fat-tail']
while True:
    print('Enter a pet name.')
    name = input()
    if name not in myPets:
        print('I do not have a pet named ' + name + ' try again')
    else:
        print(name + ' is my pet.')
        break

对于此任务,您应该使用如下while循环:

myPets = ['Zophie', 'Pooka', 'Fat-tail']
print('Enter a pet name.')
name = input()
while name not in myPets:
    print('Enter a valid pet name.')
    name = input()
print(name + ' is my pet.')

每次用户输入内容时,都会对条件进行评估。如果您的条件正确,您将不断请求用户提供其他输入,直到它符合您的要求。

对于此任务,您应该使用如下while循环:

myPets = ['Zophie', 'Pooka', 'Fat-tail']
print('Enter a pet name.')
name = input()
while name not in myPets:
    print('Enter a valid pet name.')
    name = input()
print(name + ' is my pet.')

每次用户输入内容时,都会对条件进行评估。如果您的条件正确,您将继续要求用户提供其他输入,直到它符合您的要求。

以下是您需要的:

myPets = ['Zophie', 'Pooka', 'Fat-tail']

done=Fasle
while not done:
    name=input("enter a pet name: ")
    if name in myPets:
       done=True
       print(name + ' is my pet.')
    else:
        print('I do not have a pet named ' + name + ' try again')

以下是您正在寻找的内容:

myPets = ['Zophie', 'Pooka', 'Fat-tail']

done=Fasle
while not done:
    name=input("enter a pet name: ")
    if name in myPets:
       done=True
       print(name + ' is my pet.')
    else:
        print('I do not have a pet named ' + name + ' try again')

您可以使用一个简单的while循环:

myPets = ['Zophie', 'Pooka', 'Fat-tail']
loop=0
while loop==0:
    print('Enter a pet name.')
    name = input()
    if name not in myPets:
        print('I do not have a pet named ' + name + ' try again')

    else:
        print(name + ' is my pet.')
        loop=loop+1
或:

使用递归循环(不推荐):


您可以使用一个简单的while循环:

myPets = ['Zophie', 'Pooka', 'Fat-tail']
loop=0
while loop==0:
    print('Enter a pet name.')
    name = input()
    if name not in myPets:
        print('I do not have a pet named ' + name + ' try again')

    else:
        print(name + ' is my pet.')
        loop=loop+1
或:

使用递归循环(不推荐):


if
更改为
while
,并删除
else
取消缩进最后一次
打印()。最后,使用另一个
input()
更新while中的
name
,您也可以使用
raw\u input()
,这样您就不必使用“标记总是;)谢谢你。我尝试了你的评论,这确实循环并要求另一个名字,但当我输入了一个有效的名字,它仍然要求另一个宠物的名字,而不是结束。。。。或者可能我没有做正确的更改。将
if
更改为
while
,然后删除
else
对最后一个
打印()进行缩进。最后,使用另一个
input()
更新while中的
name
,您也可以使用
raw\u input()
,这样您就不必使用“标记总是;)谢谢你。我尝试了你的评论,这确实循环并要求另一个名字,但当我输入了一个有效的名字,它仍然要求另一个宠物的名字,而不是结束。。。。或者我没有做正确的更改。你所谓的“def:loop”实际上被称为“递归”,一个调用自身的函数。观察你的程序的内存使用情况,同时也看看你能输入多少次错误的答案,直到你得到一个正确的答案“超过最大递归深度”错误。了解此错误后,我建议编辑您的答案。只需单击edit并将文本从“Def:loop”更改为“recursion”。我们一直建议你改进你的答案。是的,现在我会这样做。再次感谢你的提示,我现在正在做我的普通中等教育证书,不想犯那个错误@jps您所调用的“def:loop”实际上被称为“递归”,一个调用自身的函数。观察你的程序的内存使用情况,同时也看看你能输入多少次错误的答案,直到你得到一个正确的答案“超过最大递归深度”错误。了解此错误后,我建议编辑您的答案。只需单击edit并将文本从“Def:loop”更改为“recursion”。我们一直建议你改进你的答案。是的,现在我会这样做。再次感谢你的提示,我现在正在做我的普通中等教育证书,不想犯那个错误@太平绅士