Heim  >  Artikel  >  Backend-Entwicklung  >  Warum wirkt sich eine falsche Platzierung der Return-Anweisung in For-Schleifen auf die Eingabeschleife aus?

Warum wirkt sich eine falsche Platzierung der Return-Anweisung in For-Schleifen auf die Eingabeschleife aus?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-19 07:23:30656Durchsuche

Why Does Misplacing the Return Statement in For Loops Affect Input Looping?

Fehlplatzierung der Return-Anweisung in For-Schleifen

In Ihrer Aufgabe sind Sie auf ein Problem gestoßen, bei dem das Programm trotz Zielen nur die Eingabe eines Haustieres zuließ für drei. Dieses Problem ergibt sich aus der Positionierung der Return-Anweisung innerhalb der Funktion make_list.

Innerhalb einer for-Schleife beendet die Return-Anweisung die Ausführung der Funktion sofort, wenn sie diese erreicht. Im bereitgestellten Code wird die Return-Anweisung in die Schleife eingefügt, wodurch die Funktion nach der ersten Iteration beendet wird, unabhängig von der gewünschten Anzahl von Eingaben (in diesem Fall drei).

Um dieses Problem zu beheben, Die Return-Anweisung sollte außerhalb der for-Schleife platziert werden. Dadurch wird sichergestellt, dass die Schleife die vorgeschriebene Anzahl von Iterationen ausführt, bevor die Funktion abgeschlossen wird.

Hier ist die korrigierte make_list-Funktion:

<code class="python">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 the list
    return pet_list</code>

Durch Platzieren der Return-Anweisung außerhalb der Schleife wird die Funktion jetzt ausgeführt wird vollständig ausgeführt, bevor die Liste der Haustierobjekte zurückgegeben wird.

Das obige ist der detaillierte Inhalt vonWarum wirkt sich eine falsche Platzierung der Return-Anweisung in For-Schleifen auf die Eingabeschleife aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn