Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 22, 2022 08:11:06

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

преобразование списка в список из кортежей

Добрый день. Помогите плиз решить задачу.
Реализовать функцию get_pairs(lst: list) ->List(Tuple), которая возвращает список из кортежей, содержащих пары элементов. пары следует формировать так, как показано в примере: вход: “1, 2, 3, 5”
выход: “(1,2), (2, 3), (3, 5)”. если в списке есть только 1 элемент, то вернуть None

Отредактировано vadart1985 (Ноя. 22, 2022 08:19:49)

Офлайн

#2 Ноя. 22, 2022 10:52:03

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

преобразование списка в список из кортежей

Тут нужно индексную переменную i поставить сначала на двойку и взять от неё (i - 1, i) и добавить эту пару к результату, который будет возвращаться, а потом прибавить к i единицу и повторить это всё в том же виде.

vadart1985
Реализовать функцию get_pairs(lst: list) ->List(Tuple), которая возвращает список из кортежей, содержащих пары элементов. пары следует формировать так, как показано в примере: вход: “1, 2, 3, 5”
выход: “(1,2), (2, 3), (3, 5)”. если в списке есть только 1 элемент, то вернуть None
 >>> def f(lst):
...     out = []
...     length = len(lst)
...     if length == 1:
...         return None
...     i = 1
...     while i < length:
...         out.append((lst[i - 1], lst[i]))
...         i += 1
...     return out
... 
>>> f([])
[]
>>> f([1])
>>> f([1, 2])
[(1, 2)]
>>> f([1, 2, 3])
[(1, 2), (2, 3)]
>>> f([1, 2, 3, 5])
[(1, 2), (2, 3), (3, 5)]
>>>



Отредактировано py.user.next (Ноя. 22, 2022 20:54:46)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version