Python列表如何从头到尾再次获取项目?

时间:2019-09-15 14:45:55

标签: python python-3.x

我需要顺序地进行迭代,直到找到或最大化。 例如:

ds = [1,2,3,4,5,6,7,8,9]
tmp = 3 # start (variable)
max = 5 # maximize (variable)
target = 8

so输出:[4,5,6,7,8] 抱歉,我的英语不好。

4 个答案:

答案 0 :(得分:1)

作为一种非常简单的方法,您可以为具有相同列表的串联建立索引。
但是,从内存角度来看,肯定不是最佳解决方案。

# ds = [1,2,3,4,5,6,7,8,9] 

start = 4
length = 7

res = (ds + ds)[start:start+length]
# [5, 6, 7, 8, 9, 1, 2]

答案 1 :(得分:0)

尝试:

  both are from same file 

  one for size 

  success: "<div class='form-group'><label for='size'>Size</label><select class='form-control' id='size' name='size'><option value=''>Select</option><option value='1'>Xl</option><option value='2'>Medium</option><option value='3'>Small</option></select></div><div class='form-group'><label for='size_price'>Size Price</label><input type='text' class='form-control' name='size_price' placeholder='If this size has different price add here' id='size_price'></div>"


  2nd for color 

  but it is repeating size request 

  {"success":"<div class='form-group'><label for='size'>Size<\/label><select class='form-control' id='size' name='size'><option value=''>Select<\/option><option value='1'>Xl<\/option><option value='2'>Medium<\/option><option value='3'>Small<\/option><\/select><\/div><div class='form-group'><label for='size_price'>Size Price<\/label><input type='text' class='form-control' name='size_price' placeholder='If this size has different price add here' id='size_price'><\/div>"}{"error":{"color_name1":"Color name must be required"}}

现在->>> ds [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> (ds * ((5+6)//len(ds) + 1))[5:5+6] [6, 7, 8, 9, 1, 2] 是您的开始位置5是您的结束位置。您要遍历整个数据集,以包含结束位置的次数进行多次,因此: 5+6

如果您的起始位置是第二个或以后的重复(如果是((5+6)//len(ds) + 1),则为您的起始位置。您可以通过减去以下方法将其移回: > 8 从开始位置和结束位置开始。

答案 2 :(得分:0)

有一种内置方法。

new_data = i[starting_index : ending_index]

如果要获取列表的其余部分,可以将数字留空。喜欢:

>>>i = [0,8,9,4]
>>>i[1:]
[8,9,4]

答案 3 :(得分:0)

请参阅此解决方案,我使用了for循环来达到您的目标

webpack 3