私が開発した暗号化を自動的に適用するプログラムを作った。コードの特定の1ビットの範囲内で、私は "文字列インデックスの範囲外"エラーを取得し続けます。「インデックスが範囲外です」というエラーが表示されるのはなぜですか?
このコードは何をしますか?
以下のコードは配列dを作成します。文字列の一部を配列に追加します。コードの目的は、元のテキストはその後、アイデアは、コードの最後の行が与える
a b c d e
f g h i j
k l X X X
にこれを有効にすることです、「ABCDEFGHIJKL」であった場合を意味し、幅5とテキストの外に四角形を作ることですエラー "文字列インデックスが範囲外です"なぜですか?それは5
d = []
for x in range(1,length/5+2):
d.append(string[(x-1)*5:5*x])
d2=str(d).replace('[','').replace(']','').replace("'",'').replace(',','').replace(' ','')
lend2=len(d)
new=''
for i in range(1,lend2):
new += str([l[i-1] for l in d]).replace('[','').replace(']','').replace("'",'').replace(',','').replace(' ','')
フル・エラーテキストに均等にデバイドように、以前のコードでは、私は言及を忘れているように、私は文字列の末尾にXさんを追加します。
new += str([l[i-1] for l in d]).replace('[','').replace(']','').replace("'",'').replace(',','').replace(' ','')
IndexError: string index out of range
テキストブロックがモノスペースである必要がある場合、標準的な解決方法は、厳密にコードではない場合でも、コードをフォーマットすることです。 – user2357112
'str()'に 'list'を送り、不要な文字をすべて置き換えるのではなく、実際に' str.join() 'を使うべきです。 – TigerhawkT3
私のコードはいくつかの領域で汚れているのは事実ですが、主な関心事はそのエラーを引き起こしていることです。 – DevilApple227