Python中是否有函数生成给定字母表上长度为n的所有字符串?
我需要一个函数Python中是否有函数生成给定字母表上长度为n的所有字符串?,python,algorithm,string,Python,Algorithm,String,我需要一个函数generateAllStrings(n,字母表)来执行以下操作: generateAllStrings(4, ['a','b']) >>> ["aaaa", "aaab", "aaba", "aabb", "abaa", .... , "bbba", "bbbb"] 换句话说,generateAllStrings(n,alphabet)应该返回列表字母表中字符长度为n的所有可能字符串 itertools或其他什么东西中有这样一个函数吗?我比我的答案更喜欢它=)
generateAllStrings(n,字母表)
来执行以下操作:
generateAllStrings(4, ['a','b'])
>>> ["aaaa", "aaab", "aaba", "aabb", "abaa", .... , "bbba", "bbbb"]
换句话说,generateAllStrings(n,alphabet)
应该返回列表字母表中字符长度为n的所有可能字符串
itertools或其他什么东西中有这样一个函数吗?我比我的答案更喜欢它=)美丽:即时+1。稍微增加一点:使用括号代替括号来理解列表,使用括号将返回一个interable,而不是一个完整的预生成列表。+1表示解决方案,+1表示圣地亚哥的iterable备注-->懒惰是美丽的。
>>> [''.join(i) for i in itertools.product("ab",repeat=4)]
['aaaa', 'aaab', 'aaba', 'aabb', 'abaa', 'abab', 'abba', 'abbb', 'baaa', 'baab', 'baba', 'babb', 'bbaa', 'bbab', 'bbba', 'bbbb']