这是Lubuntu下的python 3.5。我正在创建一个0的二维列表(8 x 64),然后我为每个位置分配一个值(存储加密转换的脏和快速方式,我只是原型设计) 。当我尝试检索存储在任何位置的值时,我得到的值与我存储的值不同(请参阅代码末尾的doctest)。
我想知道发生了什么以及为什么我没有得到我期待的结果(如果我找不到解决方案的话)要把它改成一个巨大的if-elif区块。)
_taulesS = 8 * [64 * [0]]
_taulesS[0][0] = 14
_taulesS[0][1] = 0
_taulesS[0][2] = 4
_taulesS[0][3] = 15
...
_taulesS[0][13] = 13
_taulesS[0][14] = 8
_taulesS[0][15] = 1
_taulesS[0][16] = 3
_taulesS[0][17] = 10
_taulesS[0][18] = 10
_taulesS[0][19] = 6
...
_taulesS[0][62] = 0
_taulesS[0][63] = 13
_taulesS[1][0] = 15
_taulesS[1][1] = 3
_taulesS[1][2] = 1
_taulesS[1][3] = 13
...
_taulesS[1][62] = 15
_taulesS[1][63] = 9
_taulesS[2][0] = 10
_taulesS[2][1] = 13
...
_taulesS[7][59] = 5
_taulesS[7][60] = 5
_taulesS[7][61] = 6
_taulesS[7][62] = 8
_taulesS[7][63] = 11
def taulesS(s, value):
"""
>>> taulesS(0, 17)
10
Doctest fails, taulesS(0, 17) returns 12
"""
return _taulesS[s][value]