python - 对于相同的值仅迭代一次 for 循环

标签 python python-2.7 dictionary set

我有这个:

names = {"Micky": "Mouse", "Goofy": "Black", "Pit": "Black", "Donald": "Trump"}

我想用 for 循环遍历这个字典,但只对 "Black" 遍历一次。 类似于以下内容:

for value in names.iter_only_once_values():
    print value

Output: "Mouse" , "Black" , "Trump"

这可能吗?如何实现?

最佳答案

你可以这样做:

for value in set(names.values()):
    print value

使用集合将删除所有重复项。上面的输出是:

Mouse
Black
Trump

或者,您可以使用 https://docs.python.org/2/library/itertools.html 中的 unique_everseen 配方像这样:

for value in unique_everseen(names.itervalues()):
     print value

关于python - 对于相同的值仅迭代一次 for 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31850450/

相关文章:

python - 在 Python 2.7 中使用 Ruffus 库,just_print 标志失败

python - 了解 cv2.threshold() 函数

python - 如何在 os walk Python 2.7 中跳过目录

python - 展平包含列表和元组列表的字典

c++ - 如何使用用户定义的比较结构重置 C++ 映射

python - 调用句柄后调用recv挂起

python - 将特定变量标记为已知

python - 循环重置计数并覆盖文件

python - 如何在数据仍在传输时从 http 响应 python 获得部分结果?

python - 从python字典中删除字符