Умножение элементов списка справа и слева
Написал функцию которая должна брать элемент списка, и возвращать список такого же размера, где каждый элемент равен произведению элементов справа и элементов слева.
def product_list(numbers: list) -> list:
new_list = []
for i in range(0, len(numbers) - 1):
numbers[i] = numbers[0: i-1] * numbers[i+1:] # беру элементы слева jn i и умножаю на элементы справа
return print(new_list)
product_list([12, 20]) # == [20, 12]
product_list([9, 9, 9, 9, 9]) # == [6561, 6561, 6561, 6561, 6561]
product_list([1, 5, 2]) # == [10, 2, 5]
product_list([4, 3, 9]) # == [27, 36, 12]
product_list([4, 5, 2, 19, 8, 80]) # == [121600, 97280, 243200, 25600, 60800, 6080,]
product_list([2, 8, 22, 76, 9]) # == [120384, 30096, 10944, 3168, 26752,]
Выдает ошибку что срезы нельзя между собой умножать (TypeError: can't multiply sequence by non-int of type 'list'), дайте подсказку как правильно помножить значения.