互联网做视频网站需要许可证吗,优化网站的意思,原创先锋 北京网站建设,有趣的网站有哪些我最近开始学习python#xff0c;并决定尝试制作我的第一个项目。我正在尝试做一个战舰游戏#xff0c;随机放置两个3块长的船在一块板上。但效果不太好。我为2号飞船做了一个临时的循环#xff0c;它应该检查一下旁边的两个空间是否空闲#xff0c;然后在那里建立自己的空…我最近开始学习python并决定尝试制作我的第一个项目。我正在尝试做一个战舰游戏随机放置两个3块长的船在一块板上。但效果不太好。我为2号飞船做了一个临时的循环它应该检查一下旁边的两个空间是否空闲然后在那里建立自己的空间。但有时它只是把自己放在船1已经在的位置上。有人能帮我吗下面是代码的第一部分from random import randint###board:board []for x in range(7):board.append([O] * 7)def print_board(board):for row in board:print .join(row)###ships positions:#ship 1def random_row(board):return randint(0, len(board) - 1)def random_col(board):return randint(0, len(board[0]) - 1)row_1 random_row(board)col_1 random_col(board)#ship 2row_2 random_row(board)col_2 random_col(board)def make_it_different(r,c):while r row_1 and c col_1:r random_row(board)c random_col(board)row_2 rcol_2 cmake_it_different(row_2,col_2)### Makes the next two blocks of the ships:def random_dir():n randint(1,4)if n 1:return upelif n 2:return rightelif n 3:return downelif n 4:return left#ship one:while True:d random_dir() #reset directionif d up:if row_1 2:#building...row_1_2 row_1 - 1col_1_2 col_1row_1_3 row_1 - 2col_1_3 col_1breakif d right:if col_1 len(board[0])-3:#building...row_1_2 row_1col_1_2 col_1 1row_1_3 row_1col_1_3 col_1 2breakif d down:if row_1 len(board)-3:#building...row_1_2 row_1 1col_1_2 col_1row_1_3 row_1 2col_1_3 col_1breakif d left:if col_1 2:#building...row_1_2 row_1col_1_2 col_1 - 1row_1_3 row_1col_1_3 col_1 - 2breakship_1 [(row_1,col_1),(row_1_2,col_1_2),(row_1_3,col_1_3)]这里是ship 2部分#ship two:while True:d random_dir() #reset directionif d up:if row_2 2:if (row_2 - 1,col_2) not in ship_1 and (row_2 - 2,col_2) not in ship_1:#building...row_2_2 row_2 - 1col_2_2 col_2row_2_3 row_2 - 2col_2_3 col_2breakif d right:if col_2 len(board[0])-3:if (row_2 ,col_2 1) not in ship_1 and (row_2,col_2 2) not in ship_1:#building...row_2_2 row_2col_2_2 col_2 1row_2_3 row_2col_2_3 col_2 2breakif d down:if row_2 len(board)-3:if (row_2 1 ,col_2) not in ship_1 and (row_2 2,col_2) not in ship_1:#building...row_2_2 row_2 1col_2_2 col_2row_2_3 row_2 2col_2_3 col_2breakif d left:if col_2 2:if (row_2 ,col_2 - 1) not in ship_1 and (row_2,col_2 - 2) not in ship_1:#building...row_2_2 row_2col_2_2 col_2 - 1row_2_3 row_2col_2_3 col_2 - 2break###testboard[row_1][col_1] Xboard[row_1_2][col_1_2] Xboard[row_1_3][col_1_3] Xboard[row_2][col_2] Yboard[row_2_2][col_2_2] Yboard[row_2_3][col_2_3] Y#Ship1 Xs and Ship2 Ysprint_board(board)