python2和python3在input语句上的区别
2023-12-20 12:32:36
今天在巩固python基础的路上,发现了一个在input在不同的python版本的区别。
在python3里,用户输入的所有内容都会被当做字符串来存储。
C:\Users>python3
Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 17:00:18) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> a = input("请输入一个数字:")
请输入一个数字:18
>>> type(a)
<class 'str'>
如果在python3中,通过input获取的数据,在进行计算时,是需要转类型的,否则会有报错的风险。
在python2里,如果使用input语句,用户输入的内容如果是一个字符串,会把这个字符串当做一个变量使用;如果输入输入的是一个数字,会把这个数字当做数字类型。
另外输入字符串的时候,必须加引号,不然就报错
C:\Users>python
Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> b = input("请输入一个名字:")
请输入一个名字:小明
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<string>", line 1
小明
^
SyntaxError: invalid syntax
>>> b = input("请输入一个名字:")
请输入一个名字:"小明"
>>> type(b)
<type 'str'>
如果要输入字符串,不加引号,需要使用raw_input
.
C:\Users>python
Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> c = raw_input("请输入一个名字:")
请输入一个名字:小明
>>> type(c)
<type 'str'>
如果在python2中输入的是一个数字,会把这个数字当做数字类型。
C:\Users>python
Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> input("请输入一个数字:")
请输入一个数字:14
14
>>> a = input("请输入一个数字:")
请输入一个数字:14
>>> type(a)
<type 'int'>
也就是说,python3里的input功能和python2里的?raw_input
?功能一致。
文章来源:https://blog.csdn.net/xiaodaimu00/article/details/135101488
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!