python 战舰_在python中的战舰游戏

我正在用python创建一个战舰游戏。我创建了一块10X10的电路板,看起来就像这样。

-------------------------------------------------

1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |

-------------------------------------------------

11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |

-------------------------------------------------

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |

-------------------------------------------------

31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |

-------------------------------------------------

41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 |

-------------------------------------------------

51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 |

-------------------------------------------------

61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 |

-------------------------------------------------

71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 |

-------------------------------------------------

81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 |

-------------------------------------------------

91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100|

-------------------------------------------------现在我有一份船舶所处位置的清单:

s = [[21,22,23,24,25],

[45,55,65,75],

[1,2,3],

[85,86,87],

[5,15],

[46,56]]

我想写一个函数,允许用户输入一个点,如果输入在列表中,它应该返回命中。如果不是,它会返回小姐。

这是我到目前为止:

def createBoard():

board=[]

for i in range(10):

board.append(str(i)+" ")

for j in range(10,100):

board.append(j)

return(board)

def printBoard(board):

for i in range(0,100,10):

print("\n"+"-"*45)

for j in range(1,10,1):

print(board[i+j],"|",end=" ")

print("\n"+"-"*45)

printBoard(createBoard())

position=int(input("Choose position on the board"))

g="Miss"

a="hit"

s = [[21,22,23,24,25],

[45,55,65,75],

[1,2,3],

[85,86,87],

[5,15],

[46,56]]

for i in range(0,len(s),1):

if position in s[i]:

print(a)

elif position not in s[i]:

print(g)到目前为止,它发现输入是否在列表中,但它返回五次,我只希望它返回一次。我只能使用基本代码,因为我不知道很多高级工作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值