开发者社区> 问答> 正文

数组2D不能订阅

Pycharm给出错误:

 print(' '.join(board[row]).replace('*', ' '))
 TypeError: 'int' object is not subscriptable

对于以下代码

print('    ', end='')
print(' '.join([str(row) for row in range(N)]))
print('    ', end='')
print(' '.join(['-' for _ in range(N)]))
for row in range(0, N, 1):
    print(row, end=' | ')
    if player == COMPUTER:
        print(' '.join(board[row]).replace('*', ' '))
    else:
        print(' '.join(board[row]))

print()

我在这个函数中设置了board:

 def GetValueFromUser(player):
board = []
for i in range (0,N):
    board.append(([" "]*N))
for i in range(1, NUMBER_SHIP):
    for ship_to_place in range(0, SHIP_SIZE_TO_COUNT[i]):
        print("Your current board:")
        print_board(board, player)
        x = input("Enter location for Battleship of size {}:"
                  .format(i))
        while 1:
            x, y = x.split(",")
            y, z = y.split(" ")
            if check_location_and_place_ship(board, int(x), int(y), z,
                                             i):
                break
            else:
                print("ERROR: Invalid location")
                x = input("Enter location for Battleship of size {} "
                          "again:"
                          .format(i))
return board

我搜索这个错误是什么,但越来越难解决它与列表理解在这种情况下 问题来源StackOverflow 地址:/questions/59382945/array-2d-is-not-subscriptable

展开
收起
kun坤 2019-12-27 16:57:12 436 0
1 条回答
写回答
取消 提交回答
  • ……

    2019-12-27 18:11:30
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载

相关实验场景

更多