Как присваивать переменным значения, состоящие из нескольких строк?

Функция input() позволяет присвоить значение переменной из одной строки, а как добавлять значения в переменную через input которые состоят из множества строк?

Например мне нужно сравнить между собой 2 массива данных:

купить слона
купить синего слона
цены на слонов
...
и таких строк сотни

и

слоны в рассрочку
слоны дисконт
слоны оптом
...
и таких тоже сотни

как быстро сформировать 2 списка из этих значений, чтобы получить на выходе:

a = ['купить слона', 'купить синего слона', 'цены на слонов', ... ]
b = ['слоны в рассрочку', 'слоны дисконт', 'слоны оптом', ... ]

Дополнено:

Файл с массивами данных в формате txt, по одному значению на строчке, разделены переводом строки (без запятых).


Ответы (3 шт):

Автор решения: Spartak

Возможно я не совсем понял, но как то так:

result = []
count = 0
while count < 100:
    a = input('Введите строку: ')
    result.append(a)
    count +=1
    print(result)

Эта функция позволит взять файл и получить из него массив по разделителю:

def SplitFIle(filelink, razdelitel):
    file = open(filelink, 'r') #откроем файл на чтение
    text = file.read() #возьмем от туда текст
    file.close #закроем файл
    text = text.split(razdelitel) #разобьем по разделителю
    return (text) #вернем массив данных
list1 = SplitFIle('somefile.txt', '\n') #указали ссылку на файл и разделителель (в данном случае - перенос строки)
print(list1)
→ Ссылка
Автор решения: Dareten
lines = []
while True:
    line = input()
    if line:
        lines.append(line)
    else:
        break
print(lines)

Таким образом вы сможете записывать строки в list, пока они не кончатся.

→ Ссылка
Автор решения: Даниил Кустов

Если количество строк неизвестно, то можно сделать вот так:

import sys
array = sys.stdin.read().split("\n")

Учитывайте что для завершения ввода нужно будет отправить EOF(Ctrl + D в большинстве случаев)

→ Ссылка