Python についての質問です。
Pythonエンジニア認定基礎試験の対策として、Prime Studyというサイトを使っているのですが、なぜ以下のような回答になるのかわからない問題があったので、質問させていただきます。
months = ['January', 'March', 'May', 'July']
months.append('September')
for month in months[:]:
if len(month) > 5:
months.insert(0,month)
print(months, end = '')
正答: ['September', 'January', 'January', 'March', 'May', 'July', 'September']
そもそもfor+if文でループするときは、どのような順番で要素が追加されていくのでしょうか。
.appendでmonthsの最後に”September”が最後に追加され、['January', 'March', 'May', 'July', 'September']になること、monthsの要素の長さは現時点で5なので、>5の条件に対してfalseであることは理解できるのですが、なぜ頭に['September', 'January']が追加されるのかがわかりません。
また、breakなどループを終了させる指示がない場合はどのような条件下でプログラムが終了するのでしょうか。
Python初心者なのでとても初歩的な問題かと思いますが、ご回答のほどよろしくお願い致します。
回答3件
あなたの回答
tips
プレビュー