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

Rem*_*i.b 1 python string character sequence outer-join

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

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)

Nig*_*een 9

itertools.product 是你在找什么

import itertools
output = ['_'.join(i) for i in itertools.product(Salutation, Names)]
#or whatever separator you want
Run Code Online (Sandbox Code Playgroud)