python - 通过匹配列表的字符串列表获取列表索引

标签 python python-3.x

p = [['a','b','c'],['x','y','z']]

如何获取包含字符串(char)'a'的列表索引?

列表中的“a”不起作用,或者至少我无法弄清楚。

最佳答案

使用in,但在子列表中,而不是在列表的全局列表中。与enumerate结合获取匹配列表的索引

p = [['a','b','c'],['x','y','z']]

idx = [i for i,sublist in enumerate(p) if 'a' in sublist]

这给你一个索引列表。这里我们只有一个元素:

>>> idx
[0]

您可以使用相同的技术来计算子列表中 a 的索引 BTW(使用 idx = [i for i,sublist in enumerate(p) if 'a' in sublist ])

要获得唯一值或None,只需在生成器理解上迭代一次即可:

idx = next((i for i,sublist in enumerate(p) if 'a' in sublist),None)

关于python - 通过匹配列表的字符串列表获取列表索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53500021/

相关文章:

python - 有什么方法可以强制 pip install 在需求安装失败时重试?

python - GAE python : How to use NDB KeyProperty models for many-to-one relationship?

python - 尝试使用 urllib.retrieve : 'module' object has no attribute 'retrieve' 通过 URL 下载文件

python - 如何在python中选择矩阵中的非零列

python - 来自其他 IP 而不是本地主机的请求在长时间等待时没有响应

python - Tkinter:如何构建适用于多种不同屏幕分辨率的应用程序

python - 单击按钮后如何更改 pos_hint 的值?

python - 我可以包装 windows dll 以在 Linux 下的 Python 中使用它吗?

Python 写入空的 json 文件

python - 在 C 中嵌入 Python : Error in linking - undefined reference to PyString_AsString