Проблема Python при умножении элементов в списках - PullRequest
0 голосов
/ 15 октября 2018

Я только изучаю Python и столкнулся с проблемой в коде.проблема в том, что когда я пытаюсь умножить элементы списков на код: -

r = [1,2,3,4,5]
total_m_1 = 1
for elemants_1 in r:
    total_m_1 = total_m_1 * elemants_1
    print(total_m_1)

Вывод:

2
6
24
120

... но мне нужен только конечный результат,т.е. 120.

Ответы [ 3 ]

0 голосов
/ 15 октября 2018

Не надо кричать, друг.

r = [1,2,3,4,5]
total_m_1 = 1
for elemants_1 in r:
    total_m_1 = total_m_1 * elemants_1
print(total_m_1)
0 голосов
/ 15 октября 2018

Вы дали дополнительный отступ для вашего оператора печати, который печатает промежуточные результаты

r = [1,2,3,4,5]
total_m_1 = 1
for elemants_1 in r:
    total_m_1 = total_m_1 * elemants_1

print(total_m_1)

По мере того, как вы учитесь, может оказаться полезным дать больше опций. Использование numpy

import numpy as np
np.prod(r)

Используя toolz

from toolz import accumulate
from operator import mul
r = [1,2,3,4,5]
list(accumulate(mul,r))[-1]
0 голосов
/ 15 октября 2018

Поместите оператор print после цикла:

r = [1,2,3,4,5]
total_m_1 = 1
for elemants_1 in r:
    total_m_1 = total_m_1 * elemants_1

print(total_m_1)

Таким образом, он будет печататься только один раз, после того, как все вычисления завершены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...