python - 是否可以遍历除特定子集之外的所有字典键?

标签 python dictionary

假设我有一本字典,键是所有数字 1-10。我想遍历不包括键 6-8 的那个。是否可以做类似的事情

for key in dictionary.keys().exclude([1,2,3])

我编写了 .exclude() 来演示我想做什么。

最佳答案

记住字典的键是唯一的,所以使用 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) 相同.

关于python - 是否可以遍历除特定子集之外的所有字典键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65975676/

相关文章:

来自相机的 Python OpenCV 流 - 多线程,时间戳

python - 为什么 pandas.read_fwf 没有按照指示跳过空行?

php - PHP 中的并行处理

python - 转换以元组为键的嵌套字典到数据帧

python - map (lambda x : int(x, 16)/256.0,[颜色[1 :3],颜色[3 :5],颜色[5:7]])

python - 在 Python 中,如何将字符串与字典项匹配(如 'Bra*' )

python - 格式化可变长度列表中的字符串

c# - 建议备选方案的例程

Python 分析 - runsnakerun 输出中的列是什么?

python - 操作从 dict(tuple-float) 创建的 DataFrame