一、游戏规则
计算机随机生成一个1到100之间的整数,玩家有10次机会猜测这个数字。
每次猜测后,计算机会给出提示,告诉玩家猜测的数字是太大了还是太小了。
如果玩家在10次机会内猜对了数字,玩家获胜;否则,计算机获胜。
二、代码编写
1)第一步,生成一个随机数。这里需要用到random库中的randint()函数,random库需自行安装。
使用randint()函数时,需要接在random后面,并且在后面带有一对小括号。小括号里要填两个数字,中间用逗号隔开,用来划定范围。
创建一个变量target,用来储存这个随机数。
注意,在给变量赋值时,中间用一个等号连接。
代码:
importrandom
target=nt(1,100)#在1到100间取随机数
2)这时我们需要两个变量,一个变量用来储存玩家尝试次数,另一个用来表示总次数,值恒定为10,用来和前者作比较。
代码:
attempts=0
max_attempts=10
3)接下来游戏开始,计算机需要宣布游戏开始,这时需要用到print()函数,用来打印内容。
注意,此时打印内容为字符串,要用引号括起来。
代码:
print("欢迎来到猜数字游戏!你有10次机会猜测一个1到100之间的数字")
4)由于游戏规定最多只能尝试10次,所以需要用到while循环,不断检测次数是否小于10,此时可执行while的下级代码。
这时前面(2)设置的函数就起到了作用。
注意,后面要有一个冒号。
代码:
whileattempts<max_attempts:/>
5)轮到玩家输入数字。
输入需要使用input()函数,input后面的小括号中可以填写内容,这样输入的内容会直接接到后面。
但需要注意的是,输入的内容都是字符串,无法与数字进行比较,需要使用int()函数将输入的内容转化为整数数据类型。
然后再用一个变量guess储存这个值。
如果输入的内容不符合要求怎么办?我们可以把可能发生错误的语句放在try模块里,用except来处理异常,异常内容和处理内容需要放在try和except的下级代码里。
这里需要了解一种错误类型:ValueError。valueerror是一种方法用错或者其它原因导致的计算错误,阻止信息返回正确值,可以将它写在except的后面。
注意,try和except的后面都有冒号。
输入错误后,需要重新开始循环,可以使用continue语句,它可以结束这一次循环,直接开始下一次。
代码:
口try:
口口guess=int(input("请输入你的猜测:"))
口exceptValueError:
口口print("输入无效,请输入一个整数")
口口continue
6)比较。这里使用到if-elif-else语句。
如果输入数字大于系统给出的数字,则打印“太大了”;
如果输入数字小于系统给出的数字,则打印“太小了”;
如果刚好相等,则打印“恭喜你,猜对了!答案是target(计算机所给出数字,前文变量)”,然后结束整个循环,需使用break语句。
但变量target所代表的数字并不是固定的,可以用一对大括号括住它,并且当变量出现在字符串中时,需要在字符串前面加一个字母f。
代码:
口ifguess<target:/>
口口print("太小了!")
口elifguess>target:
口口print("太大了!")
口else:
口口print(f"恭喜你,猜对了!答案是{target}")
口口break
7)当玩家没有猜中时,继续执行。
将代表尝试次数变量attempts加1。
python中,可以使用“+=”,在原数据的基础上增加。
代码: