python抓狐狸游戏设计与实现
(抓狐狸游戏设计与实现)编写程序,模拟抓狐狸小游戏。假设一共有一排 5 个洞口,小狐狸最开始的时候在其中一个洞口。小狐狸最开始的时候在其中一个洞口,然后玩家随机打开一个洞口,如果里面有狐狸就抓到了。如果洞口里没有狐狸就到第二天再来抓,但是第二天狐狸会在玩家来抓之前跳到隔壁洞口里。如果在规定的次数内抓到了狐狸就提前结束游戏并提示成功;如果规定的次数用完还没有抓到狐狸,就结束游戏并提示失败麻烦大佬写一下注释,万分感谢!! 麻烦你自己动手先写一个 suchocolate 发表于 2021-11-20 23:53
麻烦你自己动手先写一个
import random
days = int(input("请输入抓狐狸的天数:")) # 抓狐狸的天数
day = 1
hole = # 狐狸在那个洞里
holeNum = random.randint(0, 4)# 随机生成狐狸的位置
hole = 1# 狐狸在那个洞 那个洞就为1 不在为0
# print(holeList)
# 狐狸移动
def foxMove(hole):
move = random.randint(0, 1)
if move == 1 and hole != 1:# 向右移动
old = hole.index(1)#检索
hole = 0
hole = 1
else:# 向左移动
old = hole.index(1)
hole = 0
hole = 1
#print(holeList)
# 游戏体
for i in range(days):
playerNum = int(input("请输入你洞的编号(1,2,3,4,5):")) - 1
if hole == 1:
print(f"恭喜你在第{day}天的{playerNum + 1}号洞抓到了狐狸!")
break
else:
print(playerNum + 1, "号洞没有狐狸")
day += 1
foxMove(hole)
else:
new = hole.index(1)
print(f"已经第{days}天啦!机会用完啦,狐狸在{hole}号洞里面滴") 还有其他简便点的方法吗?{:10_254:} pallas 发表于 2021-11-21 13:19
还有其他简便点的方法吗?
这其实就是猜数字题,只是换成狐狸和洞罢了,代码类似啊:import random
def game():
hole = random.choice(range(1, 6))
n = 3 # 预设 3 次机会
while n > 0:
n -= 1
guess = int(input("请猜测狐狸在哪个洞?"))
if guess == hole: return True
hole = random.choice() if not hole else random.choice()
return False
print("恭喜,你抓到狐狸了") if game() else print("抱歉,次数用完了,你没有抓到狐狸") 傻眼貓咪 发表于 2021-11-21 13:48
这其实就是猜数字题,只是换成狐狸和洞罢了,代码类似啊:
大佬,这句话应该怎么理解呢?
hole = random.choice() if not hole else random.choice() pallas 发表于 2021-11-21 15:23
大佬,这句话应该怎么理解呢?
hole = random.choice() if not hole else random.choice(
假设狐狸在洞一,隔壁就是洞二和洞五。假设狐狸在洞五,隔壁就是洞一和洞四(取模5是为了预防越界,比如洞五+1变洞六模5变洞一) pallas 发表于 2021-11-21 15:23
大佬,这句话应该怎么理解呢?
hole = random.choice() if not hole else random.choice(
感觉你可能是对这种语法有疑问,这段代码等于
if not hole:
hole = random.choice()
else:
hole = random.choice()
是一种简单写法~~
页:
[1]