【发布时间】:2013-11-04 15:51:02
【问题描述】:
我有一个字符串列表,我想从中提取某个值:
["bla","blabla","blablabla","time taken to build model: 5.1 seconds", "blabla"]
通常我会通过
查找我要查找的元素的索引list.index("time taken")
但由于时间变化,我想到了使用正则表达式。我只是不知道该怎么做。
那么我怎样才能找出与某个正则表达式匹配的列表元素的索引,例如重新匹配()? (如果不遍历列表,这将花费很长时间)
【问题讨论】:
-
你真的认为没有迭代就可以逃脱吗?甚至 list.index 也是一个迭代。如果您需要这么高的性能,请使用具有已知键的字典,而不是通过列表进行搜索。
-
列表中是否有多个项目包含“花费时间”?如果是这样,您是否尝试根据 时间 查找特定项目。是否需要保留列表中项目的索引?
-
好吧,如果操作不需要几分钟,但如果没有其他方法我也可以迭代,那会更好。但是用字典的想法很好。我对 python 的了解并不深,知道 list.index 也在迭代。实际上,我问了这个问题,以学习未来的任务并学习优雅的编码。
-
@evuez - 原则上你是对的。如果没有迭代就没有其他方法可以做到这一点,那么它是重复的。很抱歉,我在搜索答案时没有找到它。
标签: python regex list search indexing