ホームページ >バックエンド開発 >Python チュートリアル >Return ステートメントで Python のループを終了できるのはどのような場合ですか?
For ループの Return ステートメント
Python では、ループ内の return ステートメントによってループが途中で終了する可能性があります。提供された例に見られるように、これにより予期しない動作が発生する可能性があります。
指定されたコードでは、関数 make_list() は 3 匹のペットのデータを収集することを目的としています。ただし、ループ内に return ステートメントを配置しているため、最初のペットのデータのみが記録されます。これは、return ステートメントがループの最初の反復後にすぐに関数を終了するためです。
この問題を修正するには、return ステートメントをループの外側に移動し、ループが関数の前に 3 つの反復をすべて完了できるようにする必要があります。戻ります。修正されたコードは次のとおりです:
<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>
この変更により、関数は意図したとおり、3 匹すべてのペットのデータを適切に収集します。
以上がReturn ステートメントで Python のループを終了できるのはどのような場合ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。