Rumah >pembangunan bahagian belakang >Tutorial Python >Mengapa Kesilapan Meletakkan Penyata Pulangan dalam For Loops Mempengaruhi Gelung Input?
Salah Letak Penyata Pulangan dalam For Gelung
Dalam tugasan anda, anda menghadapi isu di mana program hanya membenarkan input satu haiwan peliharaan walaupun menyasarkan untuk tiga. Masalah ini berpunca daripada kedudukan pernyataan pemulangan dalam fungsi make_list.
Dalam gelung for, penyataan pemulangan menamatkan pelaksanaan fungsi serta-merta apabila mencapainya. Dalam kod yang disediakan, pernyataan pemulangan diletakkan di dalam gelung, menyebabkan fungsi keluar selepas lelaran pertama, tanpa mengira bilangan input yang dikehendaki (dalam kes ini, tiga).
Untuk membetulkan isu ini, pernyataan pulangan hendaklah diletakkan di luar gelung for. Ini memastikan bahawa gelung menjalankan bilangan lelaran yang ditetapkan sebelum fungsi berakhir.
Berikut ialah fungsi senarai_buat yang diperbetulkan:
<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>
Dengan meletakkan pernyataan pulangan di luar gelung, fungsi itu sekarang dilaksanakan sepenuhnya sebelum mengembalikan senarai objek haiwan kesayangan.
Atas ialah kandungan terperinci Mengapa Kesilapan Meletakkan Penyata Pulangan dalam For Loops Mempengaruhi Gelung Input?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!