📜  Python|自定义周期列表

📅  最后修改于: 2022-05-13 01:54:24.658000             🧑  作者: Mango

Python|自定义周期列表

在使用Python列表时,我们可能会遇到需要执行列表循环的问题。这个问题看起来很简单,前面已经讨论过了。但有时,我们需要执行它的变化,因此使任务具有挑战性。我们可以进行自定义,例如循环开始的元素和循环列表中的元素数量。让我们讨论这些变化的解决方案。

方法:使用dropwhile() + cycle() + islice()
可以使用上述功能的组合来执行此任务。在这种情况下,使用dropwhile()删除元素直到 K ,然后可以使用cycle()完成循环,并且islice()用于限制列表中元素的数量。

# Python3 code to demonstrate working of
# Custom Cycle list
# using dropwhile() + cycle() + islice()
import itertools
  
# initialize list
test_list = [3, 4, 5, 7, 1]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initialize element for start cycle
K = 7
  
# initialize size of cycle list 
N = 12
  
# Custom Cycle list
# using dropwhile() + cycle() + islice()
res = list(itertools.islice(itertools.dropwhile(lambda i: i != K, itertools.cycle(test_list)),  N))
  
# printing result
print("The cycled list is : " + str(res))
输出 :
The original list is : [3, 4, 5, 7, 1]
The cycled list is : [7, 1, 3, 4, 5, 7, 1, 3, 4, 5, 7, 1]