久远的心宿三 发表于 2020-9-20 16:24:10

这俩代码的功能为啥和我想不一样?

这俩代码的功能不应该是输入整数成功,输入其他的东西报错吗???为啥我输入整数他还是提示我输入不合法,要输入整数???
temp = input("不妨猜一下小甲鱼现在心里想的是哪个数字:")
# 这种想法是因为 type(1) 会返回 <class 'int'>,如果 type(temp) 返回结果一致说明输入是整数。
while type(temp) != type(1):
    print("抱歉,输入不合法,", end='')
    temp = input("请输入一个整数:")

temp = input("不妨猜一下小甲鱼现在心里想的是哪个数字:")
# not操作符的作用是将布尔类型的结果翻转:即取反的意思,not True == Flase
while not isinstance(temp, int):
    print("抱歉,输入不合法,", end='')
    temp = input("请输入一个整数:")

baige 发表于 2020-9-20 16:28:31

input()返回类型是字符串(str)类型,它不会是int类型

久远的心宿三 发表于 2020-9-20 16:31:47

baige 发表于 2020-9-20 16:28
input()返回类型是字符串(str)类型,它不会是int类型

哦哦,该怪我没往下看。。。也就是说input()括号里的整个都会被赋予temp然后被type识别是吧??

baige 发表于 2020-9-20 16:36:21

久远的心宿三 发表于 2020-9-20 16:31
哦哦,该怪我没往下看。。。也就是说input()括号里的整个都会被赋予temp然后被type识别是吧??

temp = input()
print(type(temp))
print(type(1))
页: [1]
查看完整版本: 这俩代码的功能为啥和我想不一样?