python之input和raw_input
python2中有input和raw_input两个方法,而在python3只有一个input方法,作用是在程序中实现用户输入以获取输入结果。
1. python2中,input和raw_input两个方法是有区别的
input()要求用户输入的是合法的Python表达式,你输入什么类型的变量就返回什么类型的变量,你输入的是数字类型则返回的就是数字类型变量:
你输入一个列表时,返回的就是这个列表:
当你想要输入字符串时需要注意,例如这里直接输入hello返回报错了:
具体报错为NameError,即hello这变量没有定义,原因还是前面说的在python2中input()要求用户输入的是合法的表达式,直接输入hello会把hello作为一个变量名来获取变量hello的值,而我们并没有定义hello这个变量,所以就会有NameError的报错。
我们在输入字符串时加上引号就没问题了:
但每次输入字符串都得加上引号并不友好,这时可以使用raw_input()这个函数,它会把所有的输入当做原始数据放到字符串中,不管你输入的是什么,直接返回的都是字符串,对于想要的数据类型通过相应的方法转化即可。
例如:
2. python3中没有raw_input()方法,只有一个input()方法,它与python2中的raw_input()方法的作用是一样的