Рубрики

Python | Пользовательская нарезка в списке

Иногда, работая с Python, мы можем столкнуться с проблемой, в которой нам нужно выполнить нарезку списка. Вариантов нарезки списка может быть много. Можно иметь пользовательский интервал срезов и элементы нарезки. Давайте обсудим проблему с такой проблемой.

Метод: Использование compress() + cycle()
Комбинация вышеупомянутых функций может использоваться для выполнения этой конкретной задачи. В этом мы фильтруем список по значению Истина требуемых элементов и удаляем те, которые должны быть пропущены, предоставляя затем логическое значение false. Затем результат накапливается с помощью встроенного compress()

# Python3 код для демонстрации работы
# Пользовательская нарезка в списке
# с использованием компрессора () + цикл ()

from itertools import cycle, compress

  
# инициализировать списки

test_list = [1, 2, 4, 7, 3, 8, 6, 2, 10, 11, 17, 34, 23, 21]

  
# печать оригинального списка

print("The original list is : " + str(test_list))

  
# инициализировать интервал

interval = 5

  
# инициализировать номер элемента

ele_num = 4

  
# Пользовательская нарезка в списке
# с использованием компрессора () + цикл ()

temp = cycle([True] * ele_num + [False] * interval)

res = list(compress(test_list, temp))

  
# результат печати

print("Custom sliced list is : " + str(res))

Выход :

The original list is : [1, 2, 4, 7, 3, 8, 6, 2, 10, 11, 17, 34, 23, 21]
Custom sliced list is : [1, 2, 4, 7, 11, 17, 34, 23]

Рекомендуемые посты:

Python | Пользовательская нарезка в списке

0.00 (0%) 0 votes