python2.x和python3的区别

一、Python2.x 和 Python3.x 中 raw_input( ) 和 input( ) 区别

今天小白用pytho写了一段用户登陆的代码,写完后自信一会车,挨!!!报错。代码及报错如下:

i = 0
while i < 1:
    username = input('please into your name:')
    passwd = input('please into your passwd:')
    if username == '小白' and passwd == '123':
        print('login ok!!!')
        break
    else:
        print('your name or passwd is error,please into your name and passwd again.')
        i += 1

输出:
please into your name:小二
Traceback (most recent call last):
  File "/user_login.py", line 210, in <module>
    username = input('please into your name:')
  File "<string>", line 1
    小二
    ^
SyntaxError: invalid syntax

Process finished with exit code 1

经过一通排差发现是自己运行的是python2.7的环境,将input改成raw_input后好使了。

1、在 Python2.x 中 raw_input( ) 和 input( ),两个函数都存在,其中区别为:

  • raw_input( ) 将所有输入作为字符串看待,返回字符串类型。
  • input( ) 只能接收"数字"的输入,在对待纯数字输入时具有自己的特性,它返回所输入的数字的类型( int, float )。

2、在 Python3.x 中 raw_input( ) 和 input( ) 进行了整合,去除了 raw_input( ),仅保留了 input( ) 函数,其接收任意任性输入,将所有输入默认为字符串处理,并返回字符串类型。

二、字符编码区别

 三、print的区别

python2中可以不加()  print('a')  or print 'a'

python3中需要加()print('a')

 

希望能帮助像小白这样的同学。

posted @ 2021-08-05 21:29  关切的小白  阅读(80)  评论(0)    收藏  举报