2016-11-07 25 views
0

我有一個列表Python的重新循環列表

masterList = [42,28,14,28,14,28,42,14] 

這個表是用來產生基於上述sequence.I一秒以上列表中選擇所需循環槽列表和自動重申槽列表,直到條件得到滿足。

坦克爲響應,遺憾這裏是一個示例: -

templateList = [42,28,14,28,14,28,42,14] 
newList =[] 

while newList < 1000: 
    for i in templateList: 
     a = newList[-1] + i 
    newList.append(a) 

print(newList) 

我正在尋找的結果是: newList = [84,140,168,224,252,308,392, 420,504,560,588,644,672,728,812,840,924,980]

+2

如果你能夠給出一個更具描述性的例子(包括你已經寫的代碼),這將有助於任何人希望幫助你。 –

+1

所以......你問一個循環是如何工作的?迭代直到滿足條件就是循環的定義。也許有些代碼可以幫助我們理解。 – Hoopdady

回答

0

假設condition是條件,你想要,一種可能性是:

while condition: 
    for i in range(len(masterList)): 
     pass # Do the stuff you want 

內循環是一個循環,它遍歷列表。外部循環確保for循環結束後,另一個for循環開始(只要條件保持爲真)。

+0

'我在範圍內(len(someseq)):'是反模式。你通常希望'for x in someseq:',或者更不頻繁,'for i,x in enumerate(someseq):';這兩個選項都是更一般的(使用任意可迭代,而不僅僅是序列),它們也比重複索引更快。 – ShadowRanger

+0

謝謝,學到了一些新東西 – wwl

0

也許這是你在找什麼:

condition = True # CHANGE ME 
lst = [1,2,3] 
i = 0 
while (condition): 
    elem = lst[i] 
    print(elem) # DO STUFF 
    i = (i+1) % len(lst) 
+0

用條件檢查和break可能會更好地使用for循環和['itertools.cycle'](https://docs.python.org/2/library/itertools.html#itertools.cycle) '而不是這個while循環,Python通常比for循環慢。 –