相关疑难解决方法(0)

2149
推荐指数
17
解决办法
65万
查看次数

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

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

输入:

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中创建多个变量的所有可能组合

我有任意数量的变量,每个变量可以取任意数量的有效值。例如。a-(a1,a2,a3),b-(b1,b2),c-(c1,c2,c3,c4,c5)。现在我想要下面的字典列表

[
{a:a1,b:b1,c:c1},
{a:a1,b:b1,c:c2},
{a:a1,b:b1,c:c3},
.
.
.
{a:a3,b:b2,c:c3}
]
Run Code Online (Sandbox Code Playgroud)

在上述情况下,总共3 * 2 * 5 = 30个组合。如何在python中创建它们。

我可以for为每个变量设置三个循环,如下所示

result_list = list()
for a_val in [a1,a2,a3]:
    for b_val in [b1,b2]:
        for c_val in [c1,c2,c3,c4,c5]:
            result_list.append({a:a_val,b:b_val,c:c_val})
Run Code Online (Sandbox Code Playgroud)

但是变量的数量也有所不同。而不是3个变量,我想同时应用5个变量(a,b,c,d,e),依此类推。如何使用通用代码在python中实现

python combinations python-3.x

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

如何在python中找到字符串向量之间的所有组合

考虑以下两个字符串序列:

Salutation = ["Hello", "Hi"]
Names = ["Alice", "Matt", "Franck", "Julia"]
Run Code Online (Sandbox Code Playgroud)

我正在寻找将这些序列合并的简洁方法

["Hello_Alice", "Hi_Alice", "Hello_Matt", "Hi_Matt", "Hello_Franck", "Hi_Franck", "Hello_Julia", "Hi_Julia"]
Run Code Online (Sandbox Code Playgroud)

或与任何分隔符.

R中的等价物是:

c(outer(Salutations, Names, paste, sep="_"))
Run Code Online (Sandbox Code Playgroud)

python string character sequence outer-join

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

连接两个不同列表中的字符串

我需要在 python 中连接两个不同的字符串列表。

例如:

list1 = ['A','B','C']
list2 = ['D', 'E']
Run Code Online (Sandbox Code Playgroud)

我想获得

list3 = ['AD', 'AE', 'BD', 'BE', 'CD', 'CE']
Run Code Online (Sandbox Code Playgroud)

我试过了:

list3 = zip(list1,list2)
Run Code Online (Sandbox Code Playgroud)

它返回

list3 = [('A','D'), ('B','E')]
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

list(itertools.product(list1, list2))

但它返回

[('A','D'),('A','E'),...,('C','E')] 而不是 ['AD', 'AE', 'BD', 'BE'、'CD'、'CE']

任何想法?谢谢

python string list concatenation cartesian-product

0
推荐指数
1
解决办法
3245
查看次数