Найти - Пользователи
Полная версия: Помогите решить задачу c FOR LOOP
Начало » Python для новичков » Помогите решить задачу c FOR LOOP
1
asturias
Define a function prod(L) which returns the product of the elements in a list L.
Мне нужна функция, которая называется, допустим, Prod(L)
L это список
Функция должна возврашать произведение (1х1х1х1…) списка

У меня возвращает лишь первое число в списке, как сделать нормально?
Вот что я нахимичил:

def prod(L):
for i in range(L, L):
return i
FishHook
l=[1,2,3,4,5]
print reduce(lambda x,y: x*y, l)
EBFE
def prod(L):
  return reduce(lambda x,y: x * y, L)
from operator import mul
def prod(L):
  return reduce(mul, L)
def prod(L):
    res = 1
    for elem in L:
        res = res * elem
    return res 
asturias
Ой спасибочки! Помогло!

Кстати, сокращением какого слова является res? Я понял, что elem это элемент.
GaiveR
asturias
Кстати, сокращением какого слова является res? Я понял, что elem это элемент.
res -> result -> результат
asturias
Спасибо!

Теперь мне надо сделать вот так
def prod(L):
    res = 1
    for elem in L:
        res = res * elem
    return res 

но нельзя использовать
for elem in L
а надо использовать
for elem in range(...)

Я никак не пойму, что надо писать в скобках.
Вот что я там сделал:
for elem in range(L[0], L[-1])
, но не получилось.

Я делаю задания для новичков, поетому там нельзя использовать lambda, mul, reduce и тд.
GaiveR
def prod(L):
    res = 1
    for i in range(len(L)):
        res = res * L[i]
    return res
odnochlen
asturias
но нельзя использовать

for elem in L
А зачем? Сишный for в питоне практически нинужен.
asturias
Спасибо. Сработало
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB