【发布时间】:2018-12-10 02:23:39
【问题描述】:
我想知道在python 3中是否有一种保存和快速检索列表中元素索引的方法。
想法:
# how I do it
try:
test_index = [1,2,3].index(4) # error
except:
# handle error
# how I would like to do it:
test_index = [1,2,3].awesome_index(4) # test_index = -1
if test_index == -1:
# handle error
我不想使用 try, except 的原因是因为 try-except appears to be a little bit slower that an if-statement。由于我要处理大量数据,因此性能对我来说很重要。
是的,我知道我可以通过简单地遍历列表来实现 awesome_index,但我假设已经有一个函数以一种非常有效的方式做到了这一点。
【问题讨论】:
-
如果你的代码有瓶颈,那肯定不是。
-
Python: Find in list的可能重复
-
@khelwood 不同意,这个问题并没有给他答案
-
@Bharel 的答案为如何在不引发异常的情况下在列表中查找项目的索引提供了许多建议。仅仅因为它们与您的答案不同并不意味着它们不是答案
-
@khelwood 正如他所说,OP 相当聪明,“是的,我知道我可以通过简单地遍历列表来实现 awesome_index”。他们都在上面循环。
标签: python-3.x error-handling try-except index-error