Двумерные массивы

Fake322

Новичок
Пользователь
Дек 2, 2020
6
1
3
Здравствуйте, я новичок ещё, строго не судите. Перейду к сути проблемы.
Python:
counts = list(open('second.txt'))

allArray = []



x = 0

j = 0

i = 0



for i in range(len(counts)):



    for j in range(len(counts)):

        allArray[j] = counts[x] #ошибка в этом месте:  allArray[j] = counts[x] IndexError: list index out of range

        if counts[x+1] == counts[-1]:

            if counts[-2] > counts[-1] or counts[-2] > counts[-1]:

                allArray[j] = counts[-2]

                i += 1

                allArray[j] = counts[-1]
Никак не могу понять в чём дело, если что, то задание я оставлю ниже. Не прошу помощи с самим заданием, но нуждаюсь в помощи с разбором ошибки
_____________________________________________________________________________________
Задание: Входные данные для этой задачи должны читаться из текстового файла, а
выходные – записываться в текстовый файл.
Функции, реализующие логику задачи и чтение / запись данных из файлов / в
файлы, должны быть оформлены в виде отдельного модуля (в отдельном файле).
В данных задачах, если явно не оговорено иное, предполагается, что все строки
двумерного массива имеют одинаковую длину, т.е. массив является прямоугольным. В
реализации разрешено также использовать вместо прямоугольных массивов
ступенчатые массивы (т.е. массивы массивов или списки списков). В этом случае
необходимо дополнительно реализовать функцию проверки «прямоугольности»
ступенчатого массива, которую применять для проверки корректности данных перед
обработкой.
1. Строки, элементы которых не убывают (т.е. образуют неубывающую
последовательность чисел) переместить в начало (вверх), сохранив при этом взаимное
расположением перемещаемых строк.
 
  • Мне нравится
Реакции: Student

alext

Популярный
Пользователь
Май 10, 2020
288
66
28
Python:
allArray = []
...
allArray[j] = ...
Ты создаешь пустой массив и пытаешься обратиться к элементу с индексом j. Такого элемента в массиве не существует.
Читай про метод списков append, возможно list comprehension (списковые включения).
 
  • Мне нравится
Реакции: Student и Fake322

Fake322

Новичок
Пользователь
Дек 2, 2020
6
1
3
Python:
allArray = []
...
allArray[j] = ...
Ты создаешь пустой массив и пытаешься обратиться к элементу с индексом j. Такого элемента в массиве не существует.
Читай про метод списков append, возможно list comprehension (списковые включения).
Спасибо
 

Fake322

Новичок
Пользователь
Дек 2, 2020
6
1
3
Python:
allArray = []
...
allArray[j] = ...
Ты создаешь пустой массив и пытаешься обратиться к элементу с индексом j. Такого элемента в массиве не существует.
Читай про метод списков append, возможно list comprehension (списковые включения).
И ещё такой глупый вопрос. Я ввожу print(counts) и у меня выводится весь список чисел, но когда я прошу вывести длину - выводится 1, почему?
p.s. пробовал через цикл и append добавлять числа в другой список, всё равно пишет, что список пуст
 

alext

Популярный
Пользователь
Май 10, 2020
288
66
28
Покажи входные данные и код, телепатов тут нет.
 

Форум IT Специалистов