Как получить произведение элементов списка на примере

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

[1, 5, 2] ==> [10, 2, 5] 
[4, 5, 2, 19, 8, 80] ==> [121600, 97280, 243200, 25600, 60800, 6080]

Сначала получаем произведение без учета 1 элемента затем без учета 2 элемента и далее 3,4,5,6...

Длина списка может быть разной длины.

def list_p(numbers: list) -> list:
    total = 1
    for elem in numbers:
        elem = int(elem)
        if elem != 0:
            total *= elem
            print(total)
  

Вот что я смог сделать. Дальше уперся в стену. Помогите. За ранее спасибо!


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

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

Например, так:

def list_p(numbers: list) -> list:
    total = 1
    for elem in numbers:
        total *= elem
    return[total//x for x in numbers]
→ Ссылка