Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 20, 2024 15:36:58

vitz
Зарегистрирован: 2022-09-11
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

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

Здравствуйте господа программисты. Помогите решить задачку, как правильно записать условие.

rst = list(2,4,3,2,5,5,2)
out = [sum(rst) for i in range(1,len(rst)-1)]# сложение со следующим числом
ответ:
print(6,12,14,19)
надо получить:
(6),(6+3+2),(11+5+5),(21+2)
Заранее Спасибо за понимание.

Офлайн

#2 Апрель 20, 2024 21:02:38

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

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

  
>>> def f(seq):
...     out = []
...     it = iter(seq)
...     c = 0
...     while True:
...         a = next(it, None)
...         if a is None:
...             break
...         b = next(it, 0)
...         c += a + b
...         out.append(c)
...     return out
... 
>>> lst = [2, 4, 3, 2, 5, 5, 2]
>>> 
>>> f(lst)
[6, 11, 21, 23]
>>>



Офлайн

#3 Апрель 21, 2024 09:41:03

vitz
Зарегистрирован: 2022-09-11
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

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

Спасибо. Ответ нашел. если интересно то:

 rst = (2,4,6,2,10)
sum1 = []
i = 0
while i<len(rst)+2:
   sum1.append(sum(rst[:i]))
   i+=2
print(sum1)

Офлайн

#4 Апрель 21, 2024 11:27:03

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

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

vitz
Ответ нашел. если интересно то:
vitz
  
sum1.append(sum(rst[:i]))
Ну такое, это на вид оно короткое, а по сути что? Оно пересчитывает то, что уже считало. Если там миллион элементов будет, оно будет сотни тысяч элементов считать, а потом их пересчитывать снова.

Да и ноль тут в начале
  
>>> rst = (2,4,6,2,10)
>>> sum1 = []
>>> i = 0
>>> while i<len(rst)+2:
...    sum1.append(sum(rst[:i]))
...    i+=2
... 
>>> print(sum1)
[0, 6, 14, 24]
>>>
Ноль-то не нужен.



Отредактировано py.user.next (Апрель 21, 2024 11:28:05)

Офлайн

#5 Апрель 21, 2024 14:19:32

vitz
Зарегистрирован: 2022-09-11
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

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

Это координаты сдвига элементов. 0 это 1-ый елемент

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version