假设我有一本字典,里面的钥匙都是数字1-10。我想迭代一遍,不包括键6-8。能不能做些类似的事
for key in dictionary.keys().exclude([1,2,3])
我用.exclude()
来演示我想要做的事情。
发布于 2021-01-31 04:26:38
请记住,字典的键是唯一的,所以使用set
操作是合适的(并且非常有表现力):
dictionary = {i: i for i in range(1, 11, 1)}
for key in set(dictionary) - set([1, 2, 3]):
print(key)
您还可以使用set文本而不是显式的set
转换,如下所示:
for key in set(dictionary) - {1, 2, 3}:
print(key)
而且,正如注释中指出的那样,dictionary.keys()
与您最初的做法一样,它的行为方式与set(dictionary)
相同。
发布于 2021-01-31 04:21:39
for key in [k for k in dictionary.keys() if k not in [1,2,3]]:
... do something
发布于 2021-01-31 04:32:00
绕过循环中的几次迭代的一种方法是使用continue
.
dictionary = {1: 1, 2: 2, 3 : 3, 4: 4}
for key in dictionary:
if key in {1, 2, 3}:
continue
print(key)
https://stackoverflow.com/questions/65975676
复制相似问题