1、input函数:
input函数会假设要求用户输入的是合法的Python表达式,什么是合法的Python表达式呢?像37、3*4、‘name’都是合法的,分别代表整数37、数学表达式3乘4、字符串name,而像x=3、name是不合法的。
比如要求输入人的年龄的时候,就可以用input函数;但是要求一个人输入名字的时候要加上双引号,显然是不合理的。
2、raw_input函数:
raw_input函数把所有输入都当做原始数据,放入到字符串中,可以输入任何字符(当然包括上面所说的x=3、name)。
显然要求一个人输入名字时,用raw_input函数更合理;但是当要求是输入人的年龄时,使用raw_input函数需要做额外的字符串转整数操作。
建议:对input无特殊要求时,建议尽量使用raw_input函数。
附:
Python测试代码
raw_input1 = raw_input("num1:") print type(raw_input1) //输入22,输出<type 'str'> input1 = input('num2:') print type(input1) //输入22,输出<type 'int'> raw_input2 = raw_input("str2:") print raw_input2 //输入name,输出name input2 = input('str2:') print type(input2) //输入name,执行报错:NameError: name 'name' is not defined |