
Python组合是指选择全部或部分对象的集合,而不考虑对象的选择顺序。例如,假设我们有一个三个字母的集合。我们可能会问,我们有多少种方法可以从这个集合中选择两个字母。每个可能的选择都是一个组合的例子。
Python的组合
要在Python 中计算 组合,请使用itertools.****combinations() 方法。**itertools.combinations()**方法接受一个迭代器作为参数,并返回迭代器中元素的所有可能组合。
Python 的组合与**Permutations** 相同,只是没有一个集合会有与另一个相同的元素。所以,例如,我们有一个包含三个项目的列表,如 ['android', 'iOS', 'Symbian' ],如果我们只选择两个元素并进行组合,那么总数将是三个组合。
- ['android', 'iOS']
- ['android', 'Symbian']
- ['iOS', 'Symbian']。
例子
让我们以Python语言为例,实现它。
# app.py
from itertools import combinations
def combine(arr, s):
return list(combinations(arr, s))
array = [21, 18, 19]
set = 2
print(combine(array, set))
在上面的代码中,我们首先从itertools 模块中导入了组合对象 。
然后,我们定义了一个名为combine() 的函数 , 它将返回可能的组合列表。它接受一个参数并创建这些参数的组合。
在这个例子中,我们正在创建一个2个组合的列表。
请看输出结果。
在 Python 中计算元组的组合
要在Python中计算一个元组的组合,可以使用itertools.combinations()方法。combinations()方法接受一个元组 作为参数,并返回该元组元素的所有可能组合。
让我们定义一个元组,并对元组的项目进行组合。
# app.py
from itertools import combinations
def combine(tup, t):
return tuple(combinations(tup, t))
tup = (6, 29, 46)
set = 2
print(combine(tup, set))
请看输出结果。
在Python中寻找字典的组合
要在 Python 中计算一个字典的组合,可以使用 itertools.combinations() 方法。combinations() 方法接受一个dictionary 作为参数,并返回 dictionary 元素的所有可能组合。
让我们定义一个dictionary并对 tuple 的项目进行组合。
我们将在 dictionary 的键上执行组合。
# app.py
from itertools import combinations
def combine(dict, d):
return list(combinations(dict,d))
dictA = {
1: 19,
2: 21,
3: 18
}
set = 2
print(combine(dictA, set))
请看输出结果。
我们可以在dictionary 的值上执行组合。 请看下面的代码。
# app.py
from itertools import combinations
def combine(dict, d):
return list(combinations(dict,d))
dictA = {
1: 19,
2: 21,
3: 18
}
set = 2
print(combine(dictA.values(), set))
请看输出。
这是对 Python 组合教程的介绍。



