Задача "Считать и вывести таблицу", яндекс лицей. Ошибка.
Считать и вывести таблицу
Ограничение времени 1 секунда
Ограничение памяти 64Mb
Ввод стандартный ввод или input.txt
Вывод стандартный вывод или output.txt
Напишите программу, которая сначала считывает элементы таблицы один за другим, записывает их в список списков с именем table, затем выводит их в виде таблицы.
Формат ввода
На первых двух строках вводятся натуральные числа — количество строк (рядов) в таблице и количество столбцов в таблице.
Далее вводятся сами элементы таблицы — слова, каждое на отдельной строчке; подряд идут элементы сначала первого ряда, затем второго, и так далее.
Формат вывода
Ряды таблицы; каждый ряд — элементы таблицы на одной и той же строке, после каждого элемента выводится символ табуляции.

Примечания
В задаче обязательно нужно создать список списков с указанным именем и записать в него вводимые элементы в указанном порядке.
#!/usr/bin/python3
# Функция загружает данные из таблицы очень странного формата:
# Первая строка - кол-во строк в таблице
# Вторая строка - кол-во столбцов в строке
# Далее идут данные для каждого столбца построчно
# Возвращает Список списков с загруженными данными таблицы
def load_strange_table( filename ):
table = list()
# Текущая строка
n_row = 0
# Текущий столбец
n_col = 0
# Максимальное количество строк в табице
max_row = 0
# Максимальное количество столбцов в строке
max_col = 0
try:
with open( filename ) as f:
#print("DEBUG: Открыт файл '"+filename+"'")
# Используем метод readline чтобы считать первые две строки
# https://docs-python.ru/tutorial/metody-fajlovogo-obekta-potoka-python/metod-file-readline/
max_row = int(f.readline())
max_col = int(f.readline())
#print("DEBUG: строк: "+str(max_row)+" столбцов: "+str(max_col))
# Породим новую строку в виде пустого списка
row = list()
# Дальше читаем в цикле
for line in f:
# Удалим мусор из считанной строки
line = line.strip()
#print("DEBUG: line: '"+line+"'")
# Добавим считанное поле в конец списка с данными строки
row.append(line)
# Увеличим счетчик считаных полей
n_col = n_col + 1
# Если мы считали все поля одной строки, то надо
# обнулить счетчик считанных колонок и сохранить данные
if n_col >= max_col:
n_col = 0
# Сохраним считанные данные строки в таблице
table.append(row)
# Породим новую строку в виде пустого списка
row = list()
# Увеличим счетчик считаных строк
n_row = n_row + 1
if n_row >= max_row:
# Прервем цикл
break
except ValueError:
print("Ошибка преобразования строки в число!")
except FileNotFoundError:
print("Не удалось открыть файл '"+filename+"'")
#print("DEBUG: считано строк: "+str(len(table)))
# Вернем таблицу
return table
# Загрузим банные из файла input.txt
table = load_strange_table("input.txt")
# Выведем загруженные данные
for row in table:
# Будем сначала формировать всю строку а потом выводить ее в один заход
# Для формирования используем метод join, который объединяет строки из
# списка в одну, используя указанный разделитель
line = "\t".join(row)
print(line)