Добавьте 2 отдельных возвращаемых значения одной функции к 2 отдельным спискам в цикле for в Python3

У меня есть функция, которая возвращает 2 списка отдельно, в принципе так:

def function_returns_two(many_args**):
    do_something_fancy
    return list1, list2

Эта функция возвращает новый список list1 каждый раз, когда вы вызываете его, потому что происходит случайный выбор строк в задействованном кадре данных pandas, в то время как list2 всегда одинаков. - Теперь я хочу повторить эту функцию, в принципе:

for i in range(10):
    data, labl = function_returns_two(many_args**)

Но очевидно, что это не будет работать должным образом, потому что для каждой итерации list1 и list2 присваиваются одной и той же переменной (data, labl), то есть заменяются ранее назначенные значения.

Вместо этого я хочу добавить их. - Но как? Это вообще возможно?

for i in range(10):
    (data, labl).append(function_returns_two(many_args**)) # ???

Как бы вы решили это?


PS: я уже использую эту функцию для другой задачи, и я хотел бы использовать ее здесь. Конечно, если то, что я хочу, невозможно, я все равно могу создать отдельную функцию.

1 ответ

Это один из подходов.

Демо - версия:

data = []
lable = []
for i in range(10):
    d, l = function_returns_two(many_args**)
    data.append(d)
    lable.append(l)
Другие вопросы по тегам