鱼C论坛

 找回密码
 立即注册
查看: 787|回复: 2

为何该程序能判断浮点型也不是整数

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

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

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

x
def int_input(prompt=''):
    while True:
        try:
            int(input(prompt))
            break                           #只有当返回没有报错的时候才break跳出循环,那么输入一个float型数据的时候是个什么情况??
        except ValueError:
            print('出错,您输入的不是整数!')

int_input('请输入一个整数:')


理论上int(1.5)也会是1.按我的理解这里如果输入一个浮点型数据的话也会认为是整数。但是程序执行的时候并没有这样。哪位大神给分析一下
捕获.PNG
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-3-5 12:26:23 | 显示全部楼层
因为input返回的是str类型,哪怕你输入了 1,其返回的也是 '1'
而int是不能直接转换 '1.5' 这种形式的字符串的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-3-5 12:39:13 | 显示全部楼层
BngThea 发表于 2019-3-5 12:26
因为input返回的是str类型,哪怕你输入了 1,其返回的也是 '1'
而int是不能直接转换 '1.5' 这种形式的字符 ...

还真的是。int(1.5)和int('1.5')。。。。Thankyou~
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-14 08:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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