Python中raw_input()与input()的区别

来源:互联网 发布:西西里美丽的传说 知乎 编辑:程序博客网 时间:2024/06/05 15:14

       这个两个函数在python2.x中有如下区别,在python3中已经移除了raw_input()函数

两个函数都是读取用户输入,区别在于raw_input()函数是将用户输入全部当作字符串来处理,例子如下:

>>> name=raw_input("please input your name!")please input your name!周杰伦>>> age=raw_input("please input your age!")please input your age!40>>> name'\xd6\xdc\xbd\xdc\xc2\xd7'>>> age'40'

可以看到我们直接输入的名字和年龄,输出时都是有单引号的,说明它们是被当作字符串保存起来的。

下面,我们换input()来看看会发生什么:

>>> name=input("please input your name:")please input your name:周杰伦Traceback (most recent call last):  File "<stdin>", line 1, in <module>  File "<string>", line 1    周杰伦    ^SyntaxError: invalid syntax>>> name=input("please input your name:")please input your name:'周杰伦'>>> age=input("please input your age:")please input your age:54>>> age=input("please input your age:")please input your age:'54'>>> name'\xd6\xdc\xbd\xdc\xc2\xd7'>>> age'54'>>> age=input("please input your age:")please input your age:54>>> age54
当我们像原先一样直接中文名字时,系统会报错。原因是适用input()函数时,系统接受输入字符串或者浮点、整型数字,并且需要强调的是,输入字符串时需要加上引号。下面的年龄输入我们分别输入了字符串和整型,结果都是可以接受的,但是当输出变量时则不同。

个人建议:尽量全使用raw_input()函数,一是符合人们输入习惯,二是处理变量时无需考虑多种情况。

原创粉丝点击