鱼C论坛

 找回密码
 立即注册
查看: 678|回复: 3

[已解决]python 第五讲课后作业求助!

[复制链接]
发表于 2018-8-6 10:40:18 | 显示全部楼层 |阅读模式

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

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

x
小甲鱼第五讲课后作业的动动手第0题

0. 针对视频中小甲鱼提到的小漏洞,再次改进我们的小游戏:当用户输入错误类型的时候,及时提醒用户重新输入,防止程序崩溃。

F8J`I5]6XOMYYG6VR1N9]`P.png


为毛我按照小甲鱼的程序复制进去,无论输入数字还是字母,结果都是输入错误??

求大神指教啊——

只有我一个人这样吗?程序没错啊
最佳答案
2018-8-6 10:45:33
  1. >>> type(temp) == type(1)
  2. False
  3. >>> type(temp)
  4. <class 'str'>
  5. >>> type(1)
  6. <class 'int'>
  7. >>>  
复制代码

错的
应该是:
  1. temp = int(input("请输入一个整数"))
复制代码

因为temp是个字符串,所以不能这么比较(一定会false的)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-8-6 10:42:55 | 显示全部楼层
temp是字符串,不会和整数的类型相同
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-8-6 10:45:28 | 显示全部楼层
本帖最后由 凌九霄 于 2018-8-6 10:55 编辑

因为你输入的是字符串,根据你写的while判断,字符串类型和整数类型不等,即条件是真,所以,就一直执行里面的两行。想要正确执行,在input前面加上int()转换字符串为整数
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-8-6 10:45:33 | 显示全部楼层    本楼为最佳答案   
  1. >>> type(temp) == type(1)
  2. False
  3. >>> type(temp)
  4. <class 'str'>
  5. >>> type(1)
  6. <class 'int'>
  7. >>>  
复制代码

错的
应该是:
  1. temp = int(input("请输入一个整数"))
复制代码

因为temp是个字符串,所以不能这么比较(一定会false的)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-17 19:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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