[英]Is it possible to iterate through all of a dictionary's keys except a specific subset?
假設我有一本字典,鍵是所有數字 1-10。 我想遍歷不包括鍵 6-8 的內容。 是否可以做類似的事情
for key in dictionary.keys().exclude([1,2,3])
我編造了.exclude()
來演示我想要做什么。
for key in [k for k in dictionary.keys() if k not in [1,2,3]]:
... do something
請記住,字典的鍵是唯一的,因此使用set
操作是合適的(並且非常高效):
dictionary = {i: i for i in range(1, 11, 1)}
for key in set(dictionary) - set([1, 2, 3]):
print(key)
您還可以使用集合文字而不是顯式set
轉換,如下所示:
for key in set(dictionary) - {1, 2, 3}:
print(key)
而且,正如評論中所指出的,您最初擁有的dictionary.keys()
的行為方式與set(dictionary)
相同。
從循環中繞過幾次迭代的技術是使用continue
。
dictionary = {1: 1, 2: 2, 3 : 3, 4: 4}
for key in dictionary:
if key in {1, 2, 3}:
continue
print(key)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.