我想知道如何用Python生成长度为10的所有可能的两个字母字符串的列表。例如,清单如下:
aaaaaaaaaa
aaaaaaaaab
aaaaaaaaba
aaaaaaaabb
...
...
...
bbbbbbbbab
bbbbbbbbba
bbbbbbbbbb而且,我也意识到我的问题是多么天真;我还在学习过程中。
发布于 2016-04-13 00:40:35
您可以从0数到2**10-1数,用bin转换这些数字,用a/b替换0/1,把左边的0按右长度。
发布于 2016-04-13 00:53:28
from itertools import product
prod = [''.join(p) for p in product('ab', repeat=10)]或者,如果您只想像在示例中那样打印它:
from itertools import product
for p in product('ab', repeat=10):
print(''.join(p))参见文献资料以获取itertools.product
发布于 2016-04-13 00:46:56
def s(d):
if d:
for c in 'ab':
for rest in s(d-1):
yield c + rest
else:
yield ''
print list(s(10))或
def x(d):
return ([ 'a' + q for q in x(d-1) ] +
[ 'b' + q for q in x(d-1) ]) if d else [ '' ]
print x(10)https://stackoverflow.com/questions/36586442
复制相似问题