input()与raw_input()其实都是让用户输入数据,当记录整数或浮点数时是没什么区别的,因为用户直接输入的原始数据直接就可以保存到变量中,例如:
>>> i = input('i:') i:123 >>> print i 123
但是,当用户输入的是字符串时就有点小麻烦了,我们不能要求用户输入的字符串两边加上(' "),这样是不是用户体验太差了呢?例如:
>>> s = input('s:') s:'abc' >>> print s abc >>> >>> s = input('s:') s:abc Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<string>", line 1, in <module> NameError: name 'abc' is not defined >>>
这时,我们就要考虑用到raw_input()函数了,这个函数的作用就是把输入的数据作为原始数据,然后放到字符串中保存,我们再来看一下效果:
>>> s = raw_input('s:') s:abc >>> print s abc