我之前提到过这个问题,但是关于其他编程语言。
假设我有一些词根,前缀和后缀。
roots = ["car insurance", "auto insurance"]
prefix = ["cheap", "budget"]
suffix = ["quote", "quotes"]
Python中是否有一个简单的函数可以构建三个字符向量的所有可能组合。
所以我想要一个列表或其他数据结构,它返回每个字符串的所有可能组合的以下列表。
cheap car insurance quotes
cheap car insurance quotes
budget auto insurance quotes
budget insurance quotes
...
答案 0 :(得分:9)
for p, r, s in itertools.product(prefix, roots, suffix):
print p, r, s
答案 1 :(得分:2)
没有必要导入库,因为Python已经内置了这种语法。它不仅仅是打印,而是返回一个你要求的数据结构,然后你就可以将这些字符串连接在一起来启动:
combinations = [
p + " " + t + " " + s
for t in ts for p in prefix for s in suffix]