我正在使用生成器在列表中执行搜索,例如这个简单的示例:>>>a=[1,2,3,4]>>>(ifori,vinenumerate(a)ifv==4).next()3(只是为了举例说明,与上面的列表相比,我使用的列表要长得多,并且条目比int复杂一点。我这样做是为了每次我搜索它们时都不会遍历整个列表)现在,如果我将其改为i==666,它将返回一个StopIteration,因为它找不到任何666a中的条目。我怎样才能让它返回None呢?我当然可以将它包装在try...except子句中,但是有没有更Pythonic的方式来做到这一点? 最佳答案