„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > 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?

Veröffentlicht am 14.11.2024
Durchsuche:491

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

Fehlplatzierung der Rückgabeanweisung 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:

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

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

Freigabeerklärung Dieser Artikel wird unter folgender Adresse abgedruckt: 1729293734 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3