我的数据结构被初始化为如下:将一个值转换成的行,列和焦炭
[[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的。你能描述你想做什么吗? – 2009-06-12 04:01:46
这是一个8x5 :)我会做一个更好的例子。 – Scott 2009-06-12 04:09:25