Python做排列

Python做排列,python,permutation,Python,Permutation,我想定义一个可以对输入进行排列的函数。输入是一组列表,如: [[(u'sss',)], [(u'ssss',), (u'sssssss',)], [(u'121',), (u'222',)]] . 我想把它作为输入。对于排列,我需要在列表的每个文本之间添加文本“title”。因此,函数的输出如下所示: 'sss'+'title'+'ssss'+'title'+'121'+'title' 'sss'+'title'+'ssss'+'title'+'222'+'title' 'sss'+'tit

我想定义一个可以对输入进行排列的函数。输入是一组列表,如:

[[(u'sss',)], [(u'ssss',), (u'sssssss',)], [(u'121',), (u'222',)]] . 
我想把它作为输入。对于排列,我需要在列表的每个文本之间添加文本“title”。因此,函数的输出如下所示:

'sss'+'title'+'ssss'+'title'+'121'+'title'
'sss'+'title'+'ssss'+'title'+'222'+'title'
'sss'+'title'+'sssss'+'title'+'121'+'title'    
'sss'+'title'+'sssss'+'title'+'222'+'title'

使用
itertools.product
.join

from itertools import product

l = [[(u'sss',)], [(u'ssss',), (u'sssssss',)], [(u'121',), (u'222',)]]
result = [''.join(token + 'title' for [token] in tokens) for tokens in product(*l)]
输出:

['ssstitlesssstitle121title',
 'ssstitlesssstitle222title',
 'ssstitlessssssstitle121title',
 'ssstitlessssssstitle222title']

假设每个
元组
都是一个元组,您可以将它们解压缩并保存一个单独的循环结构,将
tup-in-tup-to-token-in-tup
更改为
token-for-token,in-tups
(或者
token-for[token]in-tups
,如果您担心后面的逗号太小的话)。谢谢您的帮助和建议