鱼C论坛

 找回密码
 立即注册
查看: 2462|回复: 6

新手关于第四讲--<改进小游戏>中的疑问

[复制链接]
发表于 2017-5-12 05:59:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
第一个问题:

"if else"条件可以单独使用么,  比如只用 "if"?

小甲鱼老师给的程序中,第一次如果答对,就直接游戏结束了

如果想第一次答对也说"你是我肚子里的蛔虫么,回答正确!"

下面是我的做法,麻烦老师给看一下这样做可以么?

这样的话就少一个"else"于第一个配对

我在机器上跑过,是可以的,但是不知道会不会有什么不可知的问题存在呢?


print("-----晚上好,来个小游戏玩一下?-----")
temp=input("猜一猜我心里想的是什么数字:")
guess=int(temp)
if guess==8:
    print("你是我肚子里的蛔虫么?回答正确!")
while guess!=8:
    temp=input("猜错了,请重新输入:")
    guess=int(temp)
    if  guess==8:
        print("你是我肚子里的蛔虫么?")
    else:
        if guess > 8:
            print("大了,大了")
        else:
            print("小了,小了")

print("游戏结束,不玩啦")

第二个问题:

这个做法还存在一个问题,就是当我第一次输入错的时候

会提示

"猜错了,请重新输入"

而不会提示大小

怎么做可以从第一次就开始有大小的提示呢?



想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2017-5-12 06:01:51 | 显示全部楼层
另外,请问我这种做法是对的么?有什么问题么?请老师给看一下,谢谢!

print("-----晚上好,来个小游戏玩一下?-----")
temp=input("猜一猜我心里想的是什么数字:")
guess=int(temp)
if guess==8:
    print("你是我肚子里的蛔虫么?回答正确!")
else:

    while guess!=8:
        if guess>8:
            temp=input("大了,大了,请重新输入:")
            guess=int(temp)
        else:
            temp=input("小了,小了,请重新输入:")
            guess=int(temp)
    guess==8
    print("终于答对啦!")
print("游戏结束,不玩啦")
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-5-12 09:29:50 | 显示全部楼层
if是可以单独使用的,后面可以不需要else
给你例子看看
num = 100
if num > 20:
  k = "ok"
print(k)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-5-12 09:32:38 | 显示全部楼层
小小0405 发表于 2017-5-12 06:01
另外,请问我这种做法是对的么?有什么问题么?请老师给看一下,谢谢!

print("-----晚上好,来个小游戏 ...

你这个是可以的
可以不可以其实你自己试试就行了,能正常运行且没有错误就行
只不过你这个没有判断输入的是不是数字的语句,所以如果我输入的不是数字就会报错,这个问题可以想办法解决,自己去查查怎么改吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-5-12 12:18:31 | 显示全部楼层
本帖最后由 当回首遇上转身 于 2017-5-12 12:22 编辑
以后代码请这样发
你代码没有什么问题,可以像楼上说的加上字符判断,只需要加 isdigit() 判断 ,具体用法请自行查阅Python Documents或者百度
if是可以单独使用的,用的时候注意缩进就可以

想实现你第二个问题只需要将if判断往上提就可以了
print("-----晚上好,来个小游戏玩一下?-----")
temp=input("猜一猜我心里想的是什么数字:")
guess=int(temp)
if guess==8:
    print("你是我肚子里的蛔虫么?回答正确!")
while guess!=8:
    if guess > 8:
        print("大了,大了")
    else:
        print("小了,小了")
    temp=input( "猜错了,请重新输入:")
    guess=int(temp)
    if  guess==8:
        print("你是我肚子里的蛔虫么?")

print("游戏结束,不玩啦")
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-5-13 08:54:23 From FishC Mobile | 显示全部楼层
当回首遇上转身 发表于 2017-5-12 12:18
你代码没有什么问题,可以像楼上说的加上字符判断,只需要加 isdigit() 判断 ,具体用法请自行查阅Python ...

谢谢解答!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-5-13 08:55:32 From FishC Mobile | 显示全部楼层
gopythoner 发表于 2017-5-12 09:29
if是可以单独使用的,后面可以不需要else
给你例子看看

知道啦!谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-8 00:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表