我有一个列表:
mylist = [[0, [0]], [2, [1]], [3, [4]], [4, [1, 4]]]
我想获取给定元素的外部列表元素的索引。
我已经尝试过了,但这只能获取列表的外部元素。
get_index = [outer for outer, inner in mylist]
我想要这样的东西:
Input: 2
Output: 1
Input: 4
Output: 3
答案 0 :(得分:3)
您可以将字典理解与enumerate
结合使用,以轻松地从第一个值中查找索引:
d = {i[0]:ix for ix, i in enumerate(mylist)}
# {0: 0, 2: 1, 3: 2, 4: 3}
d[2]
# 1
d[4]
# 3
答案 1 :(得分:0)
与所需输入/输出行为匹配的功能:
def loc( x, ml ):
return [a for a,b in ml].index(x)
答案 2 :(得分:0)
您还可以创建一个函数,向其传递一个Input并获取相应的索引作为输出
def get_index(inp):
idx = [i for i, j in enumerate(mylist) if inp==j[0]]
return idx[0]
inp = 2
get_index(inp)
# 1
inp = 4
get_index(inp)
# 3