You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中根据指定长度生成所有字母组合“单词”

生成指定长度的所有字母组合(Python实现)

固定长度的实现方式

当提前明确目标单词长度时,可通过嵌套循环直接生成所有字母组合:

长度为1的实现代码

letters = ["A", "B", "C", ... "X", "Y", "Z"]
words = []
for x in range(26):
    words.append(letters[x])
print(words)

长度为2的实现代码

letters = ["A", "B", "C", ... "X", "Y", "Z"]
words = []
for x in range(26):
    for y in range(26):
        words.append(letters[x] + letters[y])
print(words)

通用逻辑的困境

若无法提前确定单词长度,嵌套循环的方法就不再适用。尝试编写通用函数时,核心的单词生成逻辑无法完成:

def possible_words(word_length):
    list_of_words = []
    number_of_words = 26 ** word_length
    for x in range(number_of_words):
        '''generate the new word here'''
        list_of_words.append(new_word)
    return list_of_words

递归尝试与最终解决方案

曾考虑用递归解决,但未成功。后来借助itertools.product实现了需求,最终代码如下:

import itertools

alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
word_length = 2    # 此处为测试值,实际长度将由程序动态决定...
letter_tuples = itertools.product(alphabet, repeat=word_length)
words = ["".join(letter_tuple) for letter_tuple in letter_tuples]
print(words)

内容的提问来源于stack exchange,提问作者Valiant

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 15:31:01