Уведомления

Группа в Telegram: @pythonsu

#1 Май 14, 2021 00:32:14

Lee
Зарегистрирован: 2021-03-21
Сообщения: 20
Репутация: +  0  -
Профиль   Отправить e-mail  

Произведение элеметов в массиве

У меня есть массив заполненный числами. Есть ли такая команда котороя считатет произведение этих чисел ?

Офлайн

#2 Май 14, 2021 03:13:12

Ocean
Зарегистрирован: 2021-03-14
Сообщения: 131
Репутация: +  9  -
Профиль   Отправить e-mail  

Произведение элеметов в массиве

  
def product_of_numbers(given_numbers):
    """Return product of numbers in array"""
    product = given_numbers[0]
    for number in given_numbers[1:]:
        product *= number
    return product
 
def main():
    given_numbers = [12, 34, -86, 38, 28, 11, -16, -50]
    print(product_of_numbers(given_numbers))
 
if __name__ == '__main__':
    main()

Или импортировать numpy и использовать numpy.prod

  
import numpy
 
given_numbers = [12, 34, -86, 38, 28, 11, -16, -50]
print(numpy.prod(given_numbers))

Отредактировано Ocean (Май 14, 2021 03:32:14)

Офлайн

#3 Май 14, 2021 03:58:29

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Произведение элеметов в массиве

https://docs-python.ru/tutorial/vstroennye-funktsii-interpretatora-python/funktsija-sum/



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Офлайн

#4 Май 14, 2021 12:37:17

Ocean
Зарегистрирован: 2021-03-14
Сообщения: 131
Репутация: +  9  -
Профиль   Отправить e-mail  

Произведение элеметов в массиве

AD0DE412
https://docs-python.ru/tutorial/vstroennye-funktsii-interpretatora-python/funktsija-sum/
Это же сумма получится, а требовалось произведение.

Офлайн

#5 Май 14, 2021 18:34:38

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

Произведение элеметов в массиве

RTFM

  
>>> from math import prod
>>> prod(["x",1,2,3])
'xxxxxx'

p.s.
Lee
Есть ли такая команда котороя
Команд в питоне вообще нет. В чем вы можете легко убедиться:
https://docs.python.org/3/reference/grammar.html
В данном случае это первичное выражение с семантикой вызова функции.



Отредактировано doza_and (Май 14, 2021 18:46:34)

Офлайн

#6 Май 14, 2021 19:39:45

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9716
Репутация: +  842  -
Профиль   Отправить e-mail  

Произведение элеметов в массиве

doza_and
  
>>> from math import prod
>>> prod(["x",1,2,3])
'xxxxxx'
В math нет prod.

Lee
У меня есть массив заполненный числами. Есть ли такая команда котороя считатет произведение этих чисел ?
  
>>> import functools
>>> 
>>> functools.reduce(lambda a, b: a * b, [1, 2, 3, 4, 5])
120
>>>
  
>>> import functools
>>> import operator
>>> 
>>> functools.reduce(operator.mul, [1, 2, 3, 4, 5])
120
>>>



Офлайн

#7 Май 14, 2021 20:54:33

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Произведение элеметов в массиве

Ocean
а требовалось произведение
отож и правда ТС сорян и скажем спасибо Ocean
py.user.next
В math нет prod
эээ с 3.8 версии



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Офлайн

#8 Май 14, 2021 21:27:33

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9716
Репутация: +  842  -
Профиль   Отправить e-mail  

Произведение элеметов в массиве

AD0DE412
эээ с 3.8 версии
У меня питон операционной системы - 3.6.1. Поставить-то можно и Python 3.9.5, только вот времени нет на это, а программу надо выполнять прямо сейчас. Хочешь, чтобы на половине компов в мире твой код не выполнялся, - пиши его на самых новейших функциях.



Отредактировано py.user.next (Май 14, 2021 21:28:35)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version