2024-09-30 19:23:14 发布
网友
我有一个多维列表
multiDemList = [[1,'a'],[2,'b'],[3,'c']]
我想通过索引3的列表来找到list元素[3,'c']的位置。你知道吗
[3,'c']
我尝试过各种通配符
multiDemList.index([3,*])
这说明了期望的结果…但不起作用。你知道吗
下面的列表理解将为您提供multiDemList中列表的所有索引的列表,其第一个元素是3:
multiDemList
3
[i for i, v in enumerate(multiDemList) if v[0] == 3]
如果您知道只有一个这样的元素,那么可以使用next(),如Avinash Raj的解决方案所示:
next()
next(i for i, v in enumerate(multiDemList) if v[0] == 3)
你可以这样做
>>> multiDemList = [[1,'a'],[2,'b'],[3,'c']] >>> next(multiDemList.index([i[0],i[1]]) for i in multiDemList if i[0]==3) 2
可以在函数中使用enumerate,如下所示:
enumerate
>>> multiDemList = [[1,'a'],[2,'b'],[3,'c']] >>> def return_indx(li): ... for i,j in enumerate(li): ... if j[0]==3: ... return i ... return None ... >>> return_indx(multiDemList) 2
或:
>>> def return_indx(li,val): ... try : ... return next(i for i, j in enumerate(multiDemList) if j[0] == val) ... except StopIteration : ... return None ... >>> return_indx(multiDemList,3) 2 >>> return_indx(multiDemList,1) 0
下面的列表理解将为您提供
multiDemList
中列表的所有索引的列表,其第一个元素是3
:如果您知道只有一个这样的元素,那么可以使用
next()
,如Avinash Raj的解决方案所示:你可以这样做
可以在函数中使用
enumerate
,如下所示:或:
相关问题 更多 >
编程相关推荐