Не переписывает переменную при условии

Почему при флаге True не переписывает переменную list_num2?

def func(*num,flag):
    list_num1 = []
    list_num2 = []
    if flag == False:
        for number in num:
            if number % 2 == 0:
                list_num1.append(number)
    return list_num1
    if flag == True:
        for number in num:
            if number % 2 != 0:
                list_num2.append(number)
    return list_num2
print(func(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, flag=True))

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

Автор решения: Sergey Gornostaev

Потому что return заканчивает выполнение функции. До if flag == True выполнение просто не доходит.

→ Ссылка