Доработать ПОЧТИ готовый код на питоне. В файл вывести все строки наибольшей длины

Данный код выводит из одного файла в другой самые длинные строки(в столбик!!!). Но если получается, что в первом файле слов больше 1, то во втором файле под КАЖДОЕ слово НОВАЯ строка, не могу понять как это исправить(
“В выходной файл выведите все строки наибольшей длины из входного файла, не меняя их порядок.”

with open("C:\\Users\\User\\Desktop\\ОП\\Питон\\input.txt") as file:
    text = file.readlines()
r = 0
textlen = [0]*len(text)
for i in range(len(text)):
    text[i] = text[i].rstrip()
    if r < len(text[i]):
        r = len(text[i])
life = open(r"C:\\Users\\User\\Desktop\\ОП\\Питон\\output.txt", "w+")
for i in range(len(text)):
    if len(text[i]) == r:
        text[i] = text[i].split()
            #if ' '.join(text[i]))#
        n = text[i]
        life.writelines("%s\n" % line for line in text[i])
print('Перебор завершён')
life.close()

Так а зачем это?

в этом if вы ж просто нашли одну строку нужной длины, которую надо записать и идти дальше.

Тогда он начинает по каждой букве новую строку создавать(1 строка - 1 буква)

Чет не понял ни чего.
Ваша задача прочесть строки из файла и записать те-же строки в другой файл но не строками а столбцами?
В результате получаете только первый символ строки, правильно понял?

Так что вы тогда путаете мысли идеей вывода в столбец?

Так вы тут

зачем-то разделили строку на слова

а потом в цикле записали все слова

очевидно убрав первое надо и цикл убрать (иначе он будет идти по символам), и просто записать эту одну строку.

И еще можно обойтись без циклов со счетчиками, а сразу строки проходить.
Ну и переменным желательно давать понятные имена )

with open('input.txt', 'w') as file:
    file.writelines(['one\n', 'twenty one\n', 'two\n', 'twenty two\n'])

with open('input.txt') as file:
    lines = file.read().splitlines()

max_line_length = 0
for line in lines:
    if len(line) > max_line_length:
        max_line_length = len(line)

with open('output.txt', 'w') as file:
    for line in lines:
        if len(line) == max_line_length:
            file.write(line + '\n')

И в правду чудо)
Благодарствую!