python中input()与raw_input()的区别分析介绍
def input(prompt):
return eval(raw_input(prompt))
其实input也是调用了raw_input,只是做了eval处理
而eval有什么作用呢?
input:会根据用户的输入来做类型的转换
raw_input:则会把用户的输入都作为一个字符串来处理
下面是详细的补充:
首先,我们知道input()和raw_input()都是用来获取控制台的输入,当然输入的时候可以加上输入提示信息:
a = raw_input("Please input a:") b = input("Please input b:")
那么这两者有什么区别呢?
input()支持用户输入数字或者表达式,不支持输入字符串,返回的是数字类型的数值。而raw_input()捕获的是最原始的输入,也就是说返回的是一个字符串,所以如果输入的是数字,那么我们必须要进行强制转换。例如:
a = int(raw_input("Please input the number a:"))
其实input()本质上还是使用raw_input()来实现的,只是调用完raw_input()之后再调用eval()函数,所以,除非对input()有特别需要,否则一般情况下我们都是推荐使用raw_input()来与用户交互。
map接收一个函数和一个可迭代对象(如列表)作为参数,用函数处理每个元素,然后返回新的列表。
ACM有时需要要a b c这样的一行格式输入,这时就用map函数来处理,这里假设a,b,c都是整数。
a,b,c = map(int, raw_input().split()),raw_input函数输入的是字符串,字符串的split方法用来将字符串分割成序列。
更多python中input()与raw_input()的区别分析介绍相关文章请关注PHP中文网!
上一篇: php验证码实现局部刷新_PHP教程
下一篇: PHP截取中文字符串_PHP编程
推荐阅读
-
深入分析php中接口与抽象类的区别_PHP教程
-
PHP中new static()与new self()的区别异同分析_PHP
-
python中enumerate() 与zip()函数的使用比较实例分析
-
PHP中抽象类、接口的区别与选择分析_PHP
-
php中静态类与静态变量用法的区别分析_php技巧
-
关于python中的__init__与__new__以及__call__三个方法的简单介绍
-
详细分析mybatis中resultType和resultMap的区别与联系
-
C#中类与结构的区别实例分析
-
php中switch与ifelse的效率区别及适用情况分析_php技巧
-
Mysql中的count()与sum()区别详细介绍