0
我正在尋找更有效的方法來執行此功能(NO ZIP PLEASE)。希望我能得到一些反饋。我對python相當陌生。但這是我想要的功能:遍歷列表並比較其中的2個元素
遍歷數字列表,並檢查列表中的元素是否有差異2.對於那些差異爲2的元素,將它們追加到列表
輸出應該是這個樣子[[3, 5], [5, 7], [11, 13], [17, 19]]
我嘗試如下:http://goo.gl/qmPkGK或
def test(L):
g = []
#Traverse entire list starting from index 0 with increments of 1
b = L[::1]
print(b)
#Traverse entire list starting from index 1 with increments of 1
c = L[1::1]
print(c)
#For each element in range of my list given below,
for i in range(0,len(L)-1):
#checks if element in c minus element in b == 2
#if yes, append both elements to k and then append that new list to list g
if(abs(c[i]-b[i]) == 2):
k = []
k.append(b[i])
k.append(c[i])
g.append(k)
print(g)
test([2,3,5,7,11,13,17,19,23,29])
我所做的就是,打破原始列表分爲2個列表,列表b和列表c。對於表b,遍歷整個列表從索引0用的1和用於列表C增量開始,遍歷從索引1與1爲增量開始現在整個列表,我減去在列表中c和元素的元素在列表b中,並檢查它們的差異是否爲2.然後,將它們追加到列表k並在末尾附加到列表g。我計劃在程序中有某種計數器/指針,它遍歷列表,然後找出列表中的數字之間的差異,如果滿足差異2,則追加它們。我試過但我失敗了。謝謝
是的,我知道一個循環就足夠了,但我不知道該怎麼做。如果差異是2,我想比較列表索引中的元素。但不知道如何遍歷它。所以我最終打破了他們。 (:謝謝,我會翻閱你的代碼。 – misheekoh