鱼C论坛

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

[已解决]第005讲动手作业第一题

[复制链接]
发表于 2020-6-18 17:06:53 | 显示全部楼层 |阅读模式

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

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

x
  请问一下,005讲的课后动手作业第一个里面有一个guess = int(temp),想问一下这句的作用是什么,isdigit()这个方法本身就已经判断了输入值是否为数字了,不是的话就提示要输入整数,所以为啥还要加一句guess = int(temp)?我把这句注释之后运行程序貌似也没有出现什么问题啊
最佳答案
2020-6-18 17:09:36


因为 temp 接受的是input函数的返回值,而input 函数返回的是 字符串 , 字符串 '1' 是不等于 数字 1 的

所以要通过int 函数转为整数 ,而isdigit() 只是单纯的判断字符串内是不是全是 数值 ,并不会把他转为数字类型的值
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-6-18 17:09:36 | 显示全部楼层    本楼为最佳答案   


因为 temp 接受的是input函数的返回值,而input 函数返回的是 字符串 , 字符串 '1' 是不等于 数字 1 的

所以要通过int 函数转为整数 ,而isdigit() 只是单纯的判断字符串内是不是全是 数值 ,并不会把他转为数字类型的值
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-18 17:10:08 | 显示全部楼层
你把你的代码贴上来
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-18 17:11:31 | 显示全部楼层
input的类型是str  int的作用是把temp变成整数型  求最佳
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-18 17:12:59 | 显示全部楼层


我把这句注释之后运行程序貌似也没有出现什么问题啊


如果你后面 if 判断的数字都是 加上 引号的 那么确实没什么问题,但是如果你 if 后面加上的都是 数字 那么拥有不能比较大小了

但是两个字符串可以比较大小 ,是通过逐个比较他们的 ASCII 码值大小 后面小甲鱼会提到~

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-18 17:13:29 | 显示全部楼层
isdigit()是判断字符串仅有数字构成,  类型仍然为字符串 所以需要转换为整数型即guess = int(temp)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-18 17:23:43 | 显示全部楼层
因为这样才能把用户输入字符串转换成整数
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-22 03:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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