Maison  >  Article  >  développement back-end  >  Quand une instruction Return peut-elle terminer une boucle en Python ?

Quand une instruction Return peut-elle terminer une boucle en Python ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-19 07:20:30954parcourir

When Can a Return Statement Terminate a Loop in Python?

Instructions de retour dans les boucles For

En Python, une instruction de retour dans une boucle peut terminer prématurément la boucle. Cela peut conduire à un comportement inattendu, comme le montre l'exemple fourni.

Dans le code donné, la fonction make_list() vise à collecter des données sur trois animaux. Cependant, en raison du placement de l'instruction return dans la boucle, seules les données du premier animal sont enregistrées. En effet, l'instruction return quitte immédiatement la fonction après la première itération de la boucle.

Pour résoudre ce problème, l'instruction return doit être déplacée en dehors de la boucle, permettant à la boucle de terminer les trois itérations avant la fonction. revient. Voici le code corrigé :

<code class="python">import pet_class

#The make_list function gets data from the user for three pets. The function
# returns a list of pet objects containing the data.
def make_list():
    #create empty list.
    pet_list = []

    #Add three pet objects to the list.
    print 'Enter data for three pets.'
    for count in range (1, 4):
        #get the pet data.
        print 'Pet number ' + str(count) + ':'
        name = raw_input('Enter the pet name:')
        animal = raw_input('Enter the pet animal type:')
        age = raw_input('Enter the pet age:')

        #create a new pet object in memory and assign it
        #to the pet variable
        pet = pet_class.PetName(name,animal,age)

        #Add the object to the list.
        pet_list.append(pet)

    return pet_list

pets = make_list()</code>

Avec cette modification, la fonction collectera correctement les données des trois animaux, comme prévu.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn