Python2.6中input()和raw_input()的比较

本人是在linux下的Python2.6环境下试验的,二者都是用来给用户提供输入的函数

   

1. 输入的是字符串,如果该字符串是类似“123”,“34.19”,“1e3”这样的有明确数值的,input()是可以读取的,但是它会计算字符串的值,读取的其实是整型和浮点型,如果是“33ff”,“444.e”这样不合法的字符串是没有办法被input()函数捕获的,会报错。但是对于raw_input()函数,均可以读取,但是都是以字符串的形式被读取的。


2. 输入的是类似于“33+4”这样的表达式,input()函数是会计算表达式的值,返回的是37, 而raw_input()是以字符串形式读取,即“33+4”.


为什么会有这样的区别呢,看了官方文档就知道了,input()函数的实现是这样的:eval (raw_input() ), (是不是有点像javascript中的eval,转换成对象),在python3 中已经不见了raw_input() 的踪影,和input()函数进行了整合,需要用户的输入时候还是最好用raw_input()函数。


刚开始接触python,听说很强大,在学习~~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值