Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 用python集合为循环嵌套的上三角形_Python 3.x_Set - Fatal编程技术网

Python 3.x 用python集合为循环嵌套的上三角形

Python 3.x 用python集合为循环嵌套的上三角形,python-3.x,set,Python 3.x,Set,我有一组字符串,每个字符串都是字典中的一个键。我需要检查每对一次,而不是自己检查字符串。 如果是列表,我可以做如下事情: for i in range(0, len(mySet)): for j in range(i+1, len(mySet)): object1, object2 = myDict[i], myDict[j] doSomething(object1, object2) 如何使用一套工具实现此功能?您可以使用itertools。组合,例如

我有一组字符串,每个字符串都是字典中的一个键。我需要检查每对一次,而不是自己检查字符串。 如果是列表,我可以做如下事情:

for i in range(0, len(mySet)):
    for j in range(i+1, len(mySet)):
        object1, object2 = myDict[i], myDict[j]
        doSomething(object1, object2)

如何使用一套工具实现此功能?

您可以使用
itertools。组合,例如:

s = {'a', 'b', 'c'}

my_dict = {'a':1, 'b':2, 'c':3}

from itertools import combinations

for i, j in combinations(s, 2):
    print(my_dict[i], my_dict[j])
印刷品:

2 1
2 3
1 3

您可以使用
itertools.compositions
,例如:

s = {'a', 'b', 'c'}

my_dict = {'a':1, 'b':2, 'c':3}

from itertools import combinations

for i, j in combinations(s, 2):
    print(my_dict[i], my_dict[j])
印刷品:

2 1
2 3
1 3