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!