我有数字列表的列表,例如
[[0,0,0,0,0], [1,1,0,0,0], [1,0,0,0,0], [0,0,0,0,0], [1,1,1,1,0]]
我想找到每个列表中最后一个 1 的索引。最左边的数字是索引 0。
列表中的项目不是字符串,因此我无法使用“.rindex
”函数。
感谢您的帮助。
最佳答案
您可以使用enumerate
来获取1
的每个索引并提取最后一个元素。
[[idx for idx,v in enumerate(i) if v==1][-1] if 1 in i else -1 for i in lst]
# [-1, 1, 0, -1, 3]
或者使用str.rfind
,当找不到元素时它不会引发错误,它会返回-1
。
[''.join(map(str,i)).rfind('1') for i in lst]
# [-1, 1, 0, -1, 3]
关于python - 列表中最后一次出现的不是字符串的项目 - Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61933470/