私は現在ord()とchr()を使用することを学んでいますが、次のコードでは問題があります。終了文字列の末尾に来るとwhileループ
b = '1101'
i = 0
while b != ' ' :
i = i*2 + (ord(b[0]) + ord('0'))
b = b[1:]
Traceback (most recent call last):
File "<pyshell#86>", line 2, in <module>
i = i*2 + (ord(b[0]) + ord('0'))
IndexError: string index out of range
なぜ文字列が範囲の外に出ると、私は期待どおりの代わりにループを終了するのエラーをスローしますか?
bはスペースにならない。スペースはどこから来るのだろうか?ちなみにいいタイトル。 – harold
あなたのエラーはwhileループと縮んでいる文字列に基づいていますので、 'chr'と' ord'部分を答えから取り除いて、より記述的なタイトルを付けると、同じエラーを持つ将来の人々がこれを見つけることができます回答。 –
あなたの投稿を編集し、a)あなたが質問している、または質問している問題を説明するタイトルを作ってください。それで、将来の読者が検索結果のリストにそれを見るのに役立ちます。 *あなたは難しさを持っている以上の問題についてより具体的に*。 **あなたが投稿したコードで何が**特定の困難**を抱えていますか? See [ask]。 –