我试着将所有字母表一个一个地添加到字符串中的所有位置,这就是代码:
from string import ascii_lowercase
var = 'abc'
for i in ascii_lowercase:
result = [var[:j] + i + var[j:] for j in range(len(var))]
但这是我得到的:
['zabc', 'azbc', 'abzc']
这是我所期待的:
['aabc', 'abac', 'abca','babc','abbc','abcb'...]
有谁知道如何解决这个问题。感谢。
答案 0 :(得分:2)
您可以使用嵌套列表解析
一次构建整个列表from string import ascii_lowercase
var = 'abc'
result = [var[:n]+c+var[n:] for c in ascii_lowercase for n in range(len(var)+1)]