Найти все возможные комбинации

Ранее я задавал этот вопрос, но касался других языков программирования.

Скажем, у меня есть пара корней, префиксы и суффиксы.

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 ... 

Используйте itertools.product() :

 for p, r, s in itertools.product(prefix, roots, suffix): print p, r, s 

Там нет необходимости импортировать библиотеки, поскольку Python имеет встроенный синтаксис для этого уже. Вместо того, чтобы печатать, он возвращает структуру данных, как вы просили, и вы можете присоединиться к строкам вместе для загрузки:

 combinations = [ p + " " + t + " " + s for t in ts for p in prefix for s in suffix]