python - python中所有不同k的组合数
问题描述
使用 python 3.8
列表 = [12, 9, 3, 8, 4, 35, 5, 6, 13, 15]
我想找到组合的数量。N!/k!(n-k)!
但是,当每个位置的 k不同时,不确定如何实现。
所以我有 10 个位置,在第一个位置我有 12 个不同的选择,在第二个位置我有 9 个选择,依此类推..
我如何在 python 中计算它并想了解它背后的逻辑,因此资源会有所帮助。
编辑:我一定很困惑。每个元素的乘积将给出组合数。因为在每个位置它都有位于其他位置的 K。例如,就像从 12 条裤子、9 条衬衫、3 副眼镜、8 只袜子中选择……
解决方案
据我了解,您可能想使用 numpy 的prod
功能:
np.prod(list) # Returns 2122848000, that is to say 12*9*3*8*...*15
就好像你在一个位置有 x 个选择,而在另一个位置有 y,那么你在 [x,y] 上总共有 x*y 个可能的组合。
推荐阅读
- python - 使用 scikit learn 进行无监督机器学习
- json - 在 Swift 4.1 中使用 JSON 可解码
- node.js - 在 fileStream.on('close') 上不再提供快速请求
- haproxy - HAProxy 在一个后端提供多种健康检查类型
- php - 如何在 if 语句中回显 PHP 和 HTML
- python - Python - 同时运行函数(多实例)
- sparql - 如何向查询添加条件
- jquery - 如何制作返回某个视图的 Jquery 函数?(不是部分视图)
- shell - 在用户指定月份和日期后打印日历的 Shell 脚本
- vue.js - 将整个页面重定向到 vue.js 中的 text/html