Tôi đang thử đặt tàu trên bảng Battleship. Hàm trong đoạn mã dưới đây sẽ làm điều này với một số tàu và một bảng (một mảng các mảng) làm đối số. Khi tôi chạy điều này trong Terminal, tôi nhận được:[...] có nghĩa là đầu ra trong python?
[[1, [...]], [1, [...]], [2, [...]]]
[...] có nghĩa là gì? Làm thế nào để thay thế [...] với một số nguyên ngẫu nhiên từ 0 đến 2 trong đầu ra này?
from random import randint
def print_board(board):
for row in board:
print " ".join(row)
def random_row(board):
return randint(0, len(board) - 1)
def random_col(board):
return randint(0, len(board[0]) - 1)
def set_the_ships(num_ships,board):
ship_list = []
for i in range(num_ships):
ship_row = random_row(board)
ship_col = random_col(board)
position = [ship_row,ship_list]
for j in range(i - 1):
while (position[0] == ship_list[j][0] and position[1] == ship_list[j][1]):
ship_row = random_row(board)
ship_col = random_col(board)
position = [ship_row,ship_list]
ship_list.append(position)
return ship_list
print set_the_ships(3,[[0,0,0],[0,0,0],[0,0,0]])
Bằng "chu trình tham chiếu", anh ấy có nghĩa là danh sách chứa tham chiếu đến chính nó. – kindall
Không chỉ cho chính nó, nhưng đối với bất kỳ đối tượng nào đã được in bên trong cuộc gọi đệ quy, hãy xem xét ví dụ: 'a = []; b = [a]; a.append (b); c = [a]; in c' – lejlot