如果满足条件,列表中的下一项

Next item in a list if condition met

candidates = ['abacus', 'ball', 'car']

for candidate in candidates:
     if dict[candidate] == "true":
        """next"""
     else:
       continue
"""do something"""

我在这里要做的是检查词典中是否存在某个术语,如果存在,则将控制流移至候选列表中的下一项。我在使用 next() 时遇到问题。我该怎么做?

基本上,如果当前列表值在字典中,您想转到列表的下一次迭代?如果是这样,请将“"next"”替换为 pass(无引号)。

注意,dict 是保留字,所以使用不同的名称以避免出现问题

candidates = ['abacus', 'ball', 'car']
my_dictionary = {}

for candidate in candidates:
     if candidate not in my_dictionary:
        """do something"""
        break  # exit the loop

如果词典中存在该术语,如果您想将控件移动到列表中的下一个元素,则可以使用继续。

The continue statement in Python returns the control to the beginning of the while loop. The continue statement rejects all the remaining statements in the current iteration of the loop and moves the control back to the top of the loop.

for candidate in candidates:
    if dict.get(candidate) == "true":
        continue
    else:
        """do something"""

此外,如果您使用dict[candidate],那么如果字典中不存在该键,它会给出KeyError。因此,为了避免错误,检查字典中是否存在元素的更好方法是使用 get 函数。

dict.get(candidate) == "true"