raw_input()与input()的区别(转)

Python语言,很多人认为很简单,我也不否认,入门确实挺easy的,但是要达到精通,还是需要沉淀,积累。对于想学习Python的小伙伴来说,对于input()和raw_input()区别可能不是很清楚,也容易混淆,当然了,倘若你使用的是Python3.x版本,肯定就不用考虑什么input()与raw_input()区别了,因为Python3.x版本已经丢弃了raw_input(),只有input(),但是input()还是有其局限性,话说回来,如果你使用Python2.x版本,那就更应该考虑一下两者之间的区别了。废话少说,进入正题!


1x=raw_input("please input a number:")

2y=raw_input("please input a number:")

3ifx>=y:

4printx

5else:

6printy


该段代码是比较两个数的大小并输出较大者,但是当输入x=23,y=100时,输出结果是23;x=3456,y=20000,输出结果数3456。为什么呢?OK,接下来我们利用input()替换raw_input(),继续运行代码,输入x=23,y=100,输出结果是100;x=3456,y=20000,输出结果是20000,结果终于对了,但是为什么利用raw_input()就会出错呢?主要原因是:利用raw_input()进行输入时,可以输入字符以及数字进行比较,比较的根本在于比较二者的ASCII码值,所以当输入x=23,y=100时,计算机就会按顺序一位一位地比较二者的ASCII码值,所以才会输出23。Python2.x版本中raw_input()和Python3.x版本中的input()是一样的,可以接受字符串输入,Python2.x版本中input()只接受阿拉伯数字,输入字符串就会报错。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容