假设我有这个列表:
[2,3,5,7]
Run Code Online (Sandbox Code Playgroud)
我想输出所有乘法组合:
[6,10,14,15,21,35,30,42,105,210]
Run Code Online (Sandbox Code Playgroud)
在python中有一个内衬吗?
假设你在输出中忘记了70 ...
用numpy.prod和itertools.combinations:
>>> from numpy import prod
>>> from itertools import combinations
>>> lst = [2,3,5,7]
>>> [prod(x) for i in range(2, len(lst)+1) for x in combinations(lst, i)]
[6, 10, 14, 15, 21, 35, 30, 42, 70, 105, 210]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
163 次 |
| 最近记录: |