那麼,我可能會用不同的方式來構建你的列表,但我會在一分鐘內得到。
做你想要做什麼,你需要在一個更老派的方式來遍歷:
neighbour = ['a', 'b', 'c']
scanned = [['a', 'b'],[1, 2]]
localisation = [[],[],[]]
for i in range(len(scanned[0])):
if scanned[0][i] in neighbour:
localisation[1].append(scanned[0][i])
localisation[2].append(scanned[1][i])
print localisation
>>> [[], ['a', 'b'], [1, 2]]
這是假設我(終於)瞭解你想要什麼正確。然而,它看起來像scanned
實際上是兩個列表,其中一個列表中的每個元素以某種方式與另一個列表中的相同索引元素相關。你的生活可能會通過使用dict
改爲由一個公平位更容易:
# The keys from the dict are from scanned[0]; the values are from scanned[1]
scanned = {'a':1, 'b':2}
具有與這些名單做
現在一切都比較容易的方式(包括您有任何其他與他們無關),因爲你不不必分開跟蹤您的指數:
neighbour = ['a', 'b', 'c']
scanned = {'a':1, 'b':2}
localisation = [[], [], []]
for s in scanned:
if s in neighbour:
localisation[1].append(s)
localisation[2].append(scanned[s])
print localisation
>>> [[], ['a', 'b'], [1, 2]]
看看python集。 – 2013-04-03 19:55:47
你能舉一個例子輸出嗎? – 2013-04-03 20:03:40