Dropppppp 发表于 2019-1-31 22:30:41

int()类型问题

        在小甲鱼教程里的第3节里,
                temp = input("猜小甲鱼胃里的数字是什么:")
                guess = int(temp)
        这个int去掉后,程序运行时填入一个浮点数 程序就会出错?
        求大佬求助{:10_254:} {:10_254:} {:10_262:}

虚无→与→飘渺 发表于 2019-1-31 22:44:37

input()默认返回的值是str类型,也就是string字符串类型
你输入的是1,实际记录下的是'1'
所以当你拿字符串做数学计算或者和其它数字(int)比大小的时候肯定会报错
就像我问你“刘 + 杨 = ?”你肯定答不出来

Dropppppp 发表于 2019-1-31 22:58:18

虚无→与→飘渺 发表于 2019-1-31 22:44
input()默认返回的值是str类型,也就是string字符串类型
你输入的是1,实际记录下的是'1'
所以当你拿字符 ...

就是我输入一个float类型的,他为什么出错,
   int('刘')固然不行
但int(3.14)就不行?{:10_302:}

虚无→与→飘渺 发表于 2019-1-31 23:07:23

本帖最后由 虚无→与→飘渺 于 2019-1-31 23:08 编辑

Dropppppp 发表于 2019-1-31 22:58
就是我输入一个float类型的,他为什么出错,
   int('刘')固然不行
但int(3.14)就不行?

因为在Python中带小数的数字是单独一个类型,叫float,翻译过来就是浮点的意思
而int对应的英文是integer,也就是整形(整数)的意思,你把整数这个概念硬套到小数(浮点)上肯定是要报错的

举例:
15是int
15.0是float
15.95也是float

jackz007 发表于 2019-2-1 00:39:13

    用 int(v) 做测试,当 v 为数值型变量时,整型、浮点都可以接受,但是,当 v 为字符串型变量时,只能接受整型数的字符串。

Dropppppp 发表于 2019-2-1 00:51:31

虚无→与→飘渺 发表于 2019-1-31 23:07
因为在Python中带小数的数字是单独一个类型,叫float,翻译过来就是浮点的意思
而int对应的英文是inte ...

我理解错了{:10_262:}?

temp = input
guess = int(temp)
是不是把 temp化为整形,然后赋值在 guess 上?
是不是这样的?{:10_329:}




夏a天 发表于 2019-2-1 09:20:25

Dropppppp 发表于 2019-2-1 00:51
我理解错了?

temp = input


是的

Dropppppp 发表于 2019-2-1 10:51:40

夏a天 发表于 2019-2-1 09:20
是的

哦,谢谢各位了{:10_323:}{:10_320:}
页: [1]
查看完整版本: int()类型问题