如何在 Python 的嵌套列表中查找给定值的索引?
How to find index of a given value in a nested list in Python?
我要遍历下面的嵌套列表,找到 1 然后打印该列表的索引。
my_list = [['Hello', 'World','!'],[1, 3, 'Test', 5, 7],[2, 4]]
for item in range(len(my_list)):
for item2 in range(len(my_list[item])):
output = my_list[item][item2]
if output == 1:
print('the index of 1 is [%d][%d] ' % (item.item2))
上面的循环返回 AttributeError: 'int' object has no attribute 'item2'
谁能告诉我怎么解决?感谢您的帮助!
我在嵌套列表上使用了 enumerate
来同时使用列表中项目的索引和相应的列表项目。
要查找项目的索引,请使用 list_name.index(value)
方法。
使用 in
检查成员资格,即检查值是否在列表中。
my_list = [['Hello', 'World','!'],[1, 3, 'Test', 5, 7],[2, 4]]
for i, item in enumerate(my_list):
if 1 in item:
print('Index of 1 is [{}][{}]'.format(i,item.index(1)))
输出:
您的代码中的一切似乎都很好,只需将字符串格式化程序设为元组即可。将代码的最后一行修改为以下内容:
print('the index of 1 is [%d][%d] ' % (item,item2))
for i in my_list:
if 1 in i:
print(str(i.index(1)) + "th element of " + str(i))
这输出
0th element of [1, 3, 'Test', 5, 7]
我要遍历下面的嵌套列表,找到 1 然后打印该列表的索引。
my_list = [['Hello', 'World','!'],[1, 3, 'Test', 5, 7],[2, 4]]
for item in range(len(my_list)):
for item2 in range(len(my_list[item])):
output = my_list[item][item2]
if output == 1:
print('the index of 1 is [%d][%d] ' % (item.item2))
上面的循环返回 AttributeError: 'int' object has no attribute 'item2'
谁能告诉我怎么解决?感谢您的帮助!
我在嵌套列表上使用了 enumerate
来同时使用列表中项目的索引和相应的列表项目。
要查找项目的索引,请使用 list_name.index(value)
方法。
使用 in
检查成员资格,即检查值是否在列表中。
my_list = [['Hello', 'World','!'],[1, 3, 'Test', 5, 7],[2, 4]]
for i, item in enumerate(my_list):
if 1 in item:
print('Index of 1 is [{}][{}]'.format(i,item.index(1)))
输出:
您的代码中的一切似乎都很好,只需将字符串格式化程序设为元组即可。将代码的最后一行修改为以下内容:
print('the index of 1 is [%d][%d] ' % (item,item2))
for i in my_list:
if 1 in i:
print(str(i.index(1)) + "th element of " + str(i))
这输出
0th element of [1, 3, 'Test', 5, 7]