チュートリアルのfor文に関しての質問です。
サイトには以下のようなコードが参考として載っています。
Python
1words = ['cat','window','defenestrate'] 2 3for w in words: 4 print(w, len(w)) 5 6for w in words[:]: 7 if len(w) > 6: 8 words.insert(0, w) 9
これを実行すると
Python
1cat 3 2window 6 3defenestrate 12 4>>>
となり>>>にwordsと入れると
Python
1>>> words 2['defenestrate', 'cat', 'window', 'defenestrate']
となります。
解説していただきたいところは、以下の通りです。
1. 処理の順序は1つ目のfor文が終わってから2つ目に移行しているという解釈で正しいのか
2. なぜwords[:]とする必要があるのか
for w in words: を使った場合は、この例は defenestrate を何度も繰り返し挿入することで、無限リストを作成しようとします。
とあるが、なぜ無限になるのか良く分からない
3. 2つ目のfor文の流れ
4. なぜ入力待機状態になるのか
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/20 04:55