|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
第五讲的课后练习里面进行改进
文字小游戏,目前要达到几个要求,
1.答案随机
2.猜答案三次
3.给大了还是小了的提示
4.检测输入的是不是整数
结合以上要求我自己试了一下代码:
import random
times = 3
serect = random.randint(1,10)
print ('---------------我爱鱼c工作室----------------')
guess = 0
temp= input ("不妨猜一下小甲鱼现在心里想的是哪个数字:")
while not temp.isdigit() and times>0:
print('抱歉,输入不合法')
temp= input ('请输入一个整数:')
times=times-1
if times ==0:
print(" 机会用光咯QAQ")
print ("游戏结束不玩啦!")
guess = int(temp)
while guess != serect and (times>0) :
temp= input ("哎呀,猜错啦,请重新输入:")
guess = int(temp)
times = times - 1
if guess == serect:
print("卧槽你是小甲鱼心里的蛔虫吗?!")
print("哼,猜中了也没奖励!")
print ("游戏结束不玩啦!")
else:
if guess > serect and times > 0:
print ("哥 大了大了")
print ("再试一次吧!",end="")
else :
print ("哥 小了小了")
if guess!=serect and times ==0:
print(" 机会用光咯QAQ")
print ("游戏结束不玩啦!")
思考了一下,输入错误内容也要扣次数,结合参考答案,我修改改进了一下,完美达到所有要求(大雾),但是为输入不合法三次之后,系统会提示报错
---------------我爱鱼c工作室----------------
不妨猜一下小甲鱼现在心里想的是哪个数字:qwq
抱歉,输入不合法
请输入一个整数:qwq
抱歉,输入不合法
请输入一个整数:qwq
抱歉,输入不合法
请输入一个整数:qwq
机会用光咯QAQ
游戏结束不玩啦!
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\我爱小甲鱼\文字游戏3.py", line 14, in <module>
guess = int(temp)
ValueError: invalid literal for int() with base 10: 'qwq'
最后这里还是报错了,说明这个进程这个是有问题的吧? QAQ,想搞清楚,想把所有结果都完美地复现出来
帮你改进了一下,看不懂找我:
- import random
- times = 4
- serect = random.randint(1,10)
- guess = 0
- while times >= 0 and guess != serect:
- try:
- times = times - 1
- temp= input("不妨猜一下小甲鱼现在心里想的是哪个数字:")
- guess = int(temp)
- if guess == serect:
- print("卧槽你是小甲鱼心里的蛔虫吗?!")
- print("哼,猜中了也没奖励!")
- print ("游戏结束不玩啦!")
- elif guess > serect:
- print ("哥,大了大了!")
- else:
- print ("哥,小了小了!")
-
- except ValueError:
- print("输入错误!")
- if times == 0:
- break
- except:
- print("程序出错啦!")
-
- if times == 0:
- print("机会用光咯QAQ")
- print ("游戏结束不玩啦!")
复制代码
|
|