python2.x中input跟raw_input的区别

对于标准输入的处理,不同于py3,将所有标准输入均处理为字符串,py2中则严格区分数值跟字符串。

py3:
print(type(input()))
>>12
12
<class 'str'>

py2:
print(type(input()))
>>12
12
<type 'int'>

但是对于py2 input字符串去有所不同:

print(type(input()))
>>asd
Traceback (most recent call last):
  File "c:\Users\Stan Pao\Desktop\办公\Python\Test\new.py", line 1, in <module>
    print(type(input()))
  File "<string>", line 1, in <module>
NameError: name 'asd' is not defined
------------------------------------
py2中的input在输入字符串时需要严格用引号标识出字符串
print(type(input()))
>>‘asd’
'asd'
<type 'str'>

鉴于py2中input()对输入数据类型严格的区分,因此多使用raw_input(),作用同py3中input,全作为字符串输入。

print(type(raw_input()))
12
<type 'str'>
asdf
<type 'str'>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值