私は Python プログラミングの初心者で、いくつかのビデオと Web サイトのチュートリアルに従っています。いくつかのプログラミング練習問題に取り組んでいますが、デバッグに問題があります。これが私の最初の練習用プログラミングです。この関数は文字列を受け取り、それを数値のリストに変換します。したがって、「a」は 0 になり、「b」は 1 になります。これは非常に簡単に見えますが、「IndexError: リスト インデックスが範囲外です」というエラーが発生します。いくつか試してみましたが、何が問題なのかわかりません。誰かが私のコードを見て、明らかな間違いを犯していないかどうかを確認できますか? すべてのヘルプは大歓迎です!
import sys
import string
import math
def string2nlist(m):
characters = ['a''b''c''d''e''f''g''h''i''j''k''l''m''n''o''p''q''r''s''t''u''v''w''x''y''z']
numbers = ['0''1''2''3''4''5''6''7''8''9''10''11''12''13''14''15''16''17''18''19''20''21''22''23''24''25']
newList = []
msgLen = len(m) # var msgLen will be an integer of the length
print 'Message before conversion: ' + m
index = 0 # iterate through message length in while loop
while index < msgLen:
letter = m[index] # iterate through message m
i = 0
while i < 26:
if letter == characters[i]:
newList[index] = numbers[i]
i = i + 1
index = index + 1
print newList
return newList
message = 'hello'
newMessage = string2nlist(message)
print 'Message after conversion: ', newMessage