相关疑难解决方法(0)

获取一系列列表的笛卡尔积?

如何从一组列表中获取笛卡尔积(每种可能的值组合)?

输入:

somelists = [
   [1, 2, 3],
   ['a', 'b'],
   [4, 5]
]
Run Code Online (Sandbox Code Playgroud)

期望的输出:

[(1, 'a', 4), (1, 'a', 5), (1, 'b', 4), (1, 'b', 5), (2, 'a', 4), (2, 'a', 5) ...]
Run Code Online (Sandbox Code Playgroud)

python list cartesian-product

289
推荐指数
9
解决办法
18万
查看次数

在python中重复生成排列

我知道itertools,但它似乎只能生成排列而不重复.

例如,我想为2个骰子生成所有可能的骰子.所以我需要[1,2,3,4,5,6]的大小为2的所有排列,包括重复:(1,1),(1,2),(2,1)......等等

如果可能的话,我不想从头开始实现这一点

python permutation combinatorics

69
推荐指数
3
解决办法
4万
查看次数

列表乘法

我有一个列表L = [a,b,c],我想生成一个元组列表:

[(a,a), (a,b), (a,c), (b,a), (b,b), (b,c)...] 
Run Code Online (Sandbox Code Playgroud)

我试过做L*L但它不起作用.有人能告诉我如何在python中得到它.

python list cartesian-product

5
推荐指数
3
解决办法
6637
查看次数

与python中的重复组合,其中顺序很重要

来自 python 的文档:https : //docs.python.org/2/library/itertools.html#itertools.combinations

见组合_with_replacement:“#组合_与替换('ABC',2)--> AA AB AC BB BC CC”

我想使用相同的功能,附带生成“BA”、“CA”和“CB”的奖励。

python combinations combinatorics cartesian-product python-itertools

5
推荐指数
1
解决办法
3416
查看次数

比较列表元素

如何将一个元素与排序列表中的下一个元素进行比较,并打印出它们的差异.任何帮助,将不胜感激.

Eg: 
lst = [3.18,10.57,14.95,...]
10.57 - 3.18 =  7.39
14.95 - 10.57 = 4.38
...
Run Code Online (Sandbox Code Playgroud)

python

2
推荐指数
2
解决办法
3302
查看次数

列表与另一个列表的排列的组合

我有两个清单:

object = ['square','circle','triangle']
description = ['red','green']
Run Code Online (Sandbox Code Playgroud)

我想要输出一个词典列表:

{'square': 'red', 'circle': 'red', 'triangle': 'red'}
{'square': 'red', 'circle': 'red', 'triangle': 'green'}
{'square': 'green', 'circle': 'red', 'triangle': 'green'}
Run Code Online (Sandbox Code Playgroud)

等等

所以对象不重复,但描述可能会.每个字典都有原始的对象列表作为其键.

我不确定我想要的算法的名称,所以我找不到正确的算法.(我已经查看了python中两个列表的排列,但是它正在寻求不同的结果.两个列表的排列是同一个问题,但是使用OCAML.)

python algorithm combinations

2
推荐指数
1
解决办法
114
查看次数