、列に値を変換:次のように私のデータ構造が初期化されている列とチャー
[[0,0,0,0,0,0,0,0] for x in range(8)]
8文字、8行が、各列は列の5ビットを有するので、各整数の範囲であることができます0と31を含む。
数字177(0〜319の間でも可)をchar、row、columnに変換する必要があります。
もう一度試してみましょう。今度はより良いコード例を試してみましょう。ビットは設定されません。
私は問題の逆を追加しました。多分それが助けになるでしょう。
chars = [[0,0,0,0,0,0,0,0] for x in range(8)]
# reverse solution
for char in range(8):
for row in range(8):
for col in range(5):
n = char * 40 + (row * 5 + col)
chars[char][row] = chars[char][row]^[0, 1<<4-col][row < col]
for data in range(320):
char = data/40
col = (data - char * 40) % 5
row = ?
print "Char %g, Row %g, Col %g" % (char, row, col), chars[char][row] & 1<<4-col
あなたは4x4のように見えますが、とにかく177がどのようにchar、row、colに分割されるのかはわかりません。あなたは何をしようとしていますか? –
これは8x5のためです:)私はより良い例を作ります。 – Scott