python - 在没有列表理解的情况下在 Python 中提取包含字符串的列表项?

标签 python list python-2.7 indexing list-comprehension

给定一个列表:

my_list = ['abc', 'def', 'ghi']

我想提取包含“ab”的元素(永远只有一个)。

而不是像这样有点令人费解的东西:

[i for i in my_list if 'ab' in i][0]

我正在寻找某种方法来应用与 XPath contains() 等效的东西,但用于列表。

最佳答案

如果您担心遍历整个列表:

In [50]: L = ['abc', 'def', 'ghi']

In [51]: next(itertools.dropwhile(lambda s: 'ab' not in s, L))
Out[51]: 'abc'

不要忘记import itertools

关于python - 在没有列表理解的情况下在 Python 中提取包含字符串的列表项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33131778/

相关文章:

python - 使用 Beautiful Soup 从字符串中去除 html 标签

python - 更改 django admin 中外键小部件的大小

python - python中的读取和格式化问题

python - 在 python 字典中排序键值对列表

python - 当尝试从另一个 python 脚本中运行 python 脚本时,我得到 'permission denied' !

python-2.7 - 使用 Python API 在优化失败后获取 NLOpt 结果

c - 质数元素的合并排序?

python - python中的属性 getter

python - 如何在python中减去两个列表

c - 系统/queue.h : Use of LIST_REMOVE