初学者python循环

时间:2017-06-21 11:00:13

标签: 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 have a pet named ' + name + ' try again')

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

5 个答案:

答案 0 :(得分:4)

您可以使用while循环重复此操作,直到用户输入正确的输入。使用break退出循环。

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

答案 1 :(得分:2)

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

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

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

答案 2 :(得分:2)

对于此任务,您应该使用这样的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.')

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

答案 3 :(得分:1)

这是你在找什么:

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')

答案 4 :(得分:0)

您可以使用简单的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

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

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

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

ask()