Найти - Пользователи
Полная версия: IndexError: list assignment index out of range(не понятно почему)
Начало » Python для новичков » IndexError: list assignment index out of range(не понятно почему)
1
MrJelius
На днях решил сделать не большой шифратор, вот его код(еще не дописан, из-за ошибки):
m = raw_input('Input text: ') #cool
marr = []
omarr = []
romarr = []
rcmarr = []
mres = ""
md = {}
i = 0
m = m.lower()
for i in range(0,len(m)):
	if m[i] == " " and m[i-1] == "|":
		mres+=""
	elif m[i] == " " and m[i-1] != "|":
		mres+="|"
	else:
		mres+=m[i]
print(mres)
for i in range(0,len(mres)):
	md.update(dict.fromkeys(mres[i],ord(mres[i])))
	marr.extend(mres[i])
	omarr.append(ord(mres[i]))
	
print(md)	
print(marr)
print(omarr)
for i in range(0,len(omarr),2):
	if omarr[i] != 124:
		if omarr[i] > omarr[i+1]:
			romarr[i] = omarr[i] - omarr[i+1]
			rcmarr[i] = chr(omarr[i] - omarr[i+1])
		else:
			romarr[i] = omarr[i+1] - omarr[i]
			rcmarr[i] = chr(omarr[i+1] - omarr[i])
В итоге, вот это пишет интерпритатор:
Input text: cool
cool
{'c': 99, ‘l’: 108, ‘o’: 111}


Traceback (most recent call last):
File “enc.py”, line 36, in <module>
romarr = omarr - omarr
IndexError: list assignment index out of range
Не понимаю почему, пожалуйста помогите.
py.user.next
MrJelius
romarr[i] = omarr[i] - omarr[i+1]
В этой строке romarr пустой, а в пустом списке нельзя обращаться к элементу.
MrJelius

Спасибо большое, все исправил.

This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB