Почему я выхожу за границы списка?
number=int(input('Number: '))
array=[]
array.append(number % 8)
tmp = []
tmp.append(number // 8)
flag = 0
print(array,tmp)
for i in range(1,100):
if tmp[i] // 8:
tmp.append(tmp[i] // 8)
array.append(tmp[i] % 8)
print(array,tmp)
Вывод:
Number: 1407
[7] [175]
Traceback (most recent call last):
File "c:\Users\Northon\Documents\10 % 3.py", line 9, in <module>
if tmp[i] // 8:
~~~^^^
IndexError: list index out of range
Ответы (1 шт):
Автор решения: sLoNcE
→ Ссылка
Немного оптимизировал
number=int(input('Number: '))
array=[]
array.append(number % 8)
tmp = []
tmp.append(number // 8)
flag = 0
print(array,tmp)
i = 0
while tmp[i] > 0:
array.append(tmp[i] % 8)
tmp.append(tmp[i] // 8)
i += 1
print(array,tmp)