2015-12-22 108 views
0

任何人都可以幫助我,我有一個列表2D,我想知道2D中myList的索引,但我只知道該索引的第一個值,例如我只知道'a2',我想要知道,包含'a2'在第一值列表的索引,因爲我想訪問列表的例子,我想通過知道'a2'訪問['a2', 'b1']2維python列表索引

myList2= [['a1', 'b2', 'c1'], ['a2', 'b1'], ['b1', 'c2'], ['b2', 'c1'], ['c1'], ['c2']] 

其他情況下....如果myList2是類對象的列表點。

+0

另請參閱[這裏](http://stackoverflow.com/questions/11963711/what-is-the-most-efficient-way-to-search-nested-lists-in-python),[這裏](http://stackoverflow.com/questions/6889785/python-how-to-search-an-item-in-a-nested-list),和更多類似的問題。 – TigerhawkT3

回答

0

這樣做:

for element in [i for i in myList2 if i[0]=='a2']: 
    #do something with element 

或者,

for element in filter(lambda x:x[0]=='a2',myList2): 
    #do something 
+0

謝謝,我明白了:) –

+0

@AvinashRaj,編輯。 –

+0

我有另一個問題,當迭代無法找到我設置的第一個值的列表。例如'my list = [['a1','b2','c1'],['b1','c2'],['b2','c1'],['c1'],['c2 ']]'而我的代碼是'[我爲myList2中的元素,如果我[0] =='a2']:'。你可以給我任何建議嗎? –

0

您可以檢查,如果你知道的元素,在這種情況下'a2'是在任何嵌套列表。如果是這樣,您可以打印該列表。

>>> myList2= [['a1', 'b2', 'c1'], ['a2', 'b1'], ['b1', 'c2'], ['b2', 'c1'], ['c1'], ['c2']] 
>>> for i in myList2: 
    if 'a2' in i: 
     print i 


['a2', 'b1'] 
>>>