For 迴圈中的 Return 語句
在 Python 中,迴圈中的 return 語句可能會提前終止迴圈。這可能會導致意外的行為,如提供的範例所示。
在給定的程式碼中,函數 make_list() 旨在收集三隻寵物的資料。但是,由於 return 語句放置在迴圈內,因此僅記錄第一個寵物的資料。這是因為 return 語句在迴圈的第一次迭代後立即退出函數。
要修正此問題,應將 return 語句移到迴圈之外,從而允許迴圈在函數之前完成所有三次迭代返回。以下是修正後的程式碼:
<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>
透過此修改,該函數將如預期般正確收集所有三隻寵物的資料。
以上是什麼時候 Return 語句可以終止 Python 中的迴圈?的詳細內容。更多資訊請關注PHP中文網其他相關文章!