Python列表是否与dict.get等效?

Tom*_*ert 10 python list

我有一个整数列表.我想知道数字13是否出现在其中,如果是,则在哪里.我是否必须在列表中搜索两次,如下面的代码所示?

if 13 in intList:
   i = intList.index(13)
Run Code Online (Sandbox Code Playgroud)

在字典的情况下,有一个get函数可以确定成员资格并使用相同的搜索执行查找.列表有类似的东西吗?

unw*_*ind 12

你自己用这个index()方法回答了这个问题.如果找不到索引,那将抛出异常,所以只需捕获:

def getIndexOrMinusOne(a, x):
  try:
    return a.index(x)
  except ValueError:
    return -1
Run Code Online (Sandbox Code Playgroud)


Sin*_*ion 8

看起来你只需抓住异常......

try:
    i = intList.index(13)
except ValueError:
    i = some_default_value
Run Code Online (Sandbox Code Playgroud)