raw_input()输入内容的类型判断

发布于 2022-10-15 10:18:28 字数 266 浏览 28 评论 0

由raw_input输入的内容,如何判断它的类型?
比如:

>>> raw_input()
232.1
'232.1'
>>> a = raw_input()
232.1
>>> type(a)
<type 'str'>

因为raw_input()返回的总是字符串,如何判断字符串单引号内的'232.1'是整型,字符串还是浮点型?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

妖妓 2022-10-22 10:18:28

不懂帮顶,要是我我就用正则

贵在坚持 2022-10-22 10:18:28

这个没法直接判断,就只能自己手动测试了类型了。

远昼 2022-10-22 10:18:28

本帖最后由 lunarwildgoose 于 2011-04-13 16:24 编辑

type(eval(a))
不过字符串类型的话,也是会报nameerror

>>> def myt(s):
        try:
                f=type(eval(s))
        except NameError:
                print "It is a string type :",s
                return s
        except SyntaxError,t:
                print "It is not a existent type!",t
        except:
                print "any Error"
        else:
                print f
                return eval(s)

行至春深 2022-10-22 10:18:28

额 路过

千纸鹤带着心事 2022-10-22 10:18:28

不想判断的话可以直接用input。。。。

聆听风音 2022-10-22 10:18:28

input。。

在Python 3里,已经没有raw_input了,input就是原来raw_input

童话里做英雄 2022-10-22 10:18:28

可以这样eg: int(raw_input('enter a num: '))直接得到想要的类型

相权↑美人 2022-10-22 10:18:28

回复 8# qingan80s

    我不是想把raw_input()转换为整型数据,是想判断raw_input()输入的内容是什么类型的。

有深☉意 2022-10-22 10:18:28

如果你只想用来判断它是什么类弄以下方法可用:

number  = raw_input("Input a number:"
if   type(eval(number))  is int:
     print "number's type is int"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文