私は一般的なプログラミングとPythonの初心者であり、現在のファンダメンタルズを学んでいます。下のスクリプトでは、各リスト要素の文字数を確認し、5文字以上の文字を削除しようとしています。私はこれを達成するためにfor-loopを使用していますが、最初に考慮されたfor-loop範囲に対応しないリスト要素の数の変化のために問題が発生しています。私は範囲がそれ自体変わるようにしようとしましたが、私はまだエラーが得られています。リスト要素を削除してforループの範囲を変更する
# -*- coding: utf-8 -*-
magicians =['alice','david','carolina']
def counter(word):
x= sum (c != ' ' for c in word)
return x
print magicians
for i in range (0,3):
magicians[i]=magicians[i].title()
print magicians
q=
Y=range (0,q)
for i in Y:
x= counter(magicians[i])
print x
if x<=5:
print 'this component will be deleted:', magicians[i]
del magicians[i]
q=q-1
Y=range (0,q)
print magicians
あなたの問題への洗練された答えが、この記事であり、あなたに
私の答えはなぜ投票されたのですか?あなたの理由を説明してください。 – nidhoeggr09
ありがとうございます。私は実際に投票しましたが、(-1)は現れました。 – neowhytem
もう一度投票しようとするといいですね。 – nidhoeggr09