Python 按字符列表生成单词列表

Python 按字符列表生成单词列表,python,python-2.7,word-list,Python,Python 2.7,Word List,我想按字符列表生成一个单词列表,如: A=['A'、'b'、'c']、['d']、['e'、'f'] 其中,a[0]将所有可能的字符存储在第一位,a[1]将所有可能的字符存储在第二位,依此类推。列表“A”生成的所有可能单词将为: ade adf 溴化二苯醚 bdf cde cdf 我通过以下方式生成此列表: [0]中的i的: 对于[1]中的j: 对于[2]中的k: 打印i+j+k 此代码适用于固定长度的列表(即len(A))。我想编写一个通用代码,它可以按任意大小的列表生成单词列表。您可以

我想按字符列表生成一个单词列表,如:

A=['A'、'b'、'c']、['d']、['e'、'f']
其中,
a[0]
将所有可能的字符存储在第一位,
a[1]
将所有可能的字符存储在第二位,依此类推。列表“A”生成的所有可能单词将为:

ade
adf
溴化二苯醚
bdf
cde
cdf
我通过以下方式生成此列表:

[0]中的i的
:
对于[1]中的j:
对于[2]中的k:
打印i+j+k
此代码适用于固定长度的
列表(即len(A))
。我想编写一个通用代码,它可以按任意大小的列表生成单词列表。

您可以通过以下方法完成此操作:


这将不考虑子列表的长度,因为
product
方法计算子列表元素的笛卡尔积。另外,由于我们使用python
*字符传递子列表,我们可以传递任意数量的子列表。

对于错误的编辑表示歉意。如果问题不清楚:我想传递不同长度的列表,比如:A=[['w'、'x'、'y']、['z']]或A=['A'、'b']、['d'、'e']、['k']、['l'、'm']]检查我的答案,如果有帮助,别忘了
>>> from itertools import product
>>> characters = [['a','b','c'],['d'],['e','f']]
>>> [''.join(item) for item in product(*characters)]
['ade', 'adf', 'bde', 'bdf', 'cde', 'cdf']