the_map = { 1:'a',0:'b'}
a
との 8 つのパターンを生成するために、8つのb
ビット パターンを作成します。
>>> range(8)
[0, 1, 2, 3, 4, 5, 6, 7]
# 001,010,011....111
ビットを文字 'a' および 'b' にマップして、次のような出力を受け取る方法:
['aaa','aab','aba'.......'bbb']
効率的なワンライナーを探しています。translate または format を使用する私のアプローチは、私には少し非効率的です。
>>> import string
>>> [bin(x)[2:].zfill(3).translate(string.maketrans('01','ab')) for x in xrange(8)]
['aaa', 'aab', 'aba', 'abb', 'baa', 'bab', 'bba', 'bbb']