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