0
が、私は、リスト内のそれぞれの可能なストリングのサイズを返すアルゴリズム設計するために、次のコードを書いた:最初はPythonのはIndexError:範囲外のリスト代入
def ejercicio2(list):
vseq = []
vseq[0:len(list)] = [1] # Pone valores de la lista a 1
i = 1
while i < len(list):
aux = i - 1
while aux >= 0:
if list[i] > list[aux]: # Si el valor de la lista en i es mayor que el de aux
vseq[i] = vseq[aux] + 1
break
aux -= 1
i += 1
return vseq
を、私はこれがちょうど動作するはずと思いました罰金、しかし、毎回私は、私は次のエラーを取得し、それを実行しよう:
Traceback (most recent call last):
File "prac1.py", line 17, in <module>
ejercicio2([210, 816, 357, 107, 889, 635, 733, 930, 842, 542])
File "prac1.py", line 10, in ejercicio2
vseq[i] = vseq[aux] + 1
IndexError: list assignment index out of range
私は、これは問題を解決することは容易である可能性が高いですけど、私は解決策を見つけるように見えることはありません、任意のヘルプは次のようになり感謝。ありがとう!
'VSEQ [0:使用、乗算をすべて
1
値のリストを作成したい場合は:len(list)] = [1] '' vseq'を '[1]'に展開します。 'list'と同じ長さの' 1'要素のリストを作成しません。スライスの割り当て*要素を繰り返さない*。 –
文字列のリストから最長の文字列の長さを返しますか? – user1190882
私は、最初のリストの各値の部分文字列長で全体のリストを返したい –