你很可能想要一个列表列表:
board = [['{}{}'.format(row, col) for col in columns] for row in rows]这会生成一个嵌套的列表列表:
>>> rows = [1, 2, 3, 4, 5, 6, 7, 8]
>>> columns = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
>>> board = [['{}{}'.format(row, col) for col in columns] for row in rows]
>>> from pprint import pprint
>>> pprint(board)
[['1a', '1b', '1c', '1d', '1e', '1f', '1g', '1h'],
['2a', '2b', '2c', '2d', '2e', '2f', '2g', '2h'],
['3a', '3b', '3c', '3d', '3e', '3f', '3g', '3h'],
['4a', '4b', '4c', '4d', '4e', '4f', '4g', '4h'],
['5a', '5b', '5c', '5d', '5e', '5f', '5g', '5h'],
['6a', '6b', '6c', '6d', '6e', '6f', '6g', '6h'],
['7a', '7b', '7c', '7d', '7e', '7f', '7g', '7h'],
['8a', '8b', '8c', '8d', '8e', '8f', '8g', '8h']]并且您可以使用以下内容处理单个行:
board[rownumber]或者具体的象棋位置:
board[rownumber][columnnumber]请注意,该列也是一个数字!您必须在此处将列名称('a','b'等)翻译为列号:
board[rownumber][ord(columnname) - 97]会这样做,因为ord('a')(字符'a'的ASCII位置)是97.索引是从0开始的;国际象棋位置1a转换为board[0][0]:
>>> board[0][0]
'1a'