python文字游戏循环3次_Python寻宝游戏中的无限循环

所以我创造了一个简单的寻宝游戏,你可以在一个棋盘上寻找三个宝藏。但在猜了6次之后,我陷入了困境!X代表你搜索过的区域,$符号是你找到的宝藏。请帮忙!!!!在import random

def hide_treasure(board):

treasures=0

while treasures<=3:

random_row=random.randrange(0,5)

random_col=random.randrange(0,5)

if(0<=random_row<5) and(0<=random_col<5) and (board[random_row] [random_col]==" "):

board[random_row][random_col]="T"

treasures+=1

def display_board(board,show_treasure=False):

for col in range(5):

print " %d " %col,

print

for row in range(5):

print " %d:" %(row)," | ".join(board[row]).replace("T"," ")

print " ---+---+---+---+---"

if show_treasure==True:

" ".replace(" ","T")

def make_user_move(board):

valid_move=False

while not valid_move:

try:

ask_row=input("What row would you like to search (0-4): ")

ask_col=input("What col would you like to search (0-4): ")

if board[ask_row][ask_col]=="T":

board[ask_row][ask_col]="$"

print

print"YES! You found a treasure."

return True

elif board[ask_row][ask_col]=="$" or board[ask_row][ask_col]=="X":

print

print"You already tried there, please pick again."

else:

board[ask_row][ask_col]="X"

print

print"Nothing there."

break

except ValueError:

print"Integers only for row and column values. Please try again!"

continue

except IndexError:

print

print"Sorry invalid location. Please try again!"

def main():

board=[[" "," "," "," "," "],[" "," "," "," "," "],[" ", " "," "," "," ",],[" "," "," "," "," "],[" "," "," "," "," "]]

print"WELCOME TO TREASURE HUNT!"

guess=10

treasures=0

while guess!=0 and treasures!=3:

print

print"You have",guess,"guesses left and have found",treasures,"/3 treasures"

hide_treasure(board)

display_board(board)

guess-=1

if make_user_move(board):

treasures+=1

if guess==0 and treasures!=3:

display_board(show_treasure=True)

print"OH NO! You only found %d"%treasures,"/3 treasures."

print

print"*** GAME OVER ***"

elif treasures==3:

display_board(board)

print"CONGRATULATIONS! You found ALL of the hidden treasure."

print

print"*** GAME OVER ***"

main()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值