这里会显示出您选择的修订版和当前版本之间的差别。
python-basic:input [2010/06/02 01:18] |
python-basic:input [2010/06/02 01:18] (当前版本) |
||
---|---|---|---|
行 1: | 行 1: | ||
+ | ====== Python input和raw_input的区别 ====== | ||
+ | |||
+ | 使用input和raw_input都可以读取控制台的输入,但是input和raw_input在处理数字时是有区别的 | ||
+ | |||
+ | ===== 纯数字输入 ===== | ||
+ | 当输入为纯数字时 | ||
+ | * input返回的是数值类型,如int,float | ||
+ | * raw_inpout返回的是字符串类型,string类型 | ||
+ | |||
+ | ===== 输入字符串为表达式 ===== | ||
+ | input会计算在字符串中的数字表达式,而raw_input不会。 | ||
+ | |||
+ | 如输入 "57 + 3": | ||
+ | * input会得到整数60 | ||
+ | * raw_input会得到字符串"57 + 3" | ||
+ | |||
+ | ===== python input的实现 ===== | ||
+ | 看[[http://docs.python.org/library/functions.html?highlight=input#input|python input的文档]],可以看到input其实是通过raw_input来实现的,原理很简单,就下面一行代码: | ||
+ | <code python> | ||
+ | def input(prompt): | ||
+ | return (eval(raw_input(prompt))) | ||
+ | </code> | ||