python之2.x与3.x区别(仅限于基础)

本文档详细记录了从Python2.x升级到Python3.7的基本语法变化,包括input()函数、print语句、除法运算符、range()函数及urllib库等关键API的调整。

因为看的是python2.x的书籍。用的是python 3.7.所以先把两者的区别记录一下,仅限于基础。

1、input

python3.0之后,不区分input()和raw_input(),统一为input(),默认返回格式为字符串。

2、print

py 2.x:
print "Hello" #语句
print("Hello") 

py 3.x
>>> print 'Hello'
  File "<input>", line 1
    print 'Hello'
                ^
SyntaxError: Missing parentheses in call to 'print'
>>>print('Hello')
Hello

3、除法运算

py2.x:
>>> 3/2
1
>>>
py3.x:
>>>3/2
1.5
floor除法,py2.x与py3.x相同
>>> 1//2
0
>>>

4、range

xrange() 改名为range(),要想使用range()获得一个list,必须显式调用: 
py 2.x
>>> range(1,10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

py3.x
>>> range(10)
range(0, 10)
>>> 
py3.x 如果想使用range(),可以结合list
>>> list(range(10))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> 

5、urllib


在python2中使用的import urllib2——对应的,在python3中使用import urllib.request , import urllib.error

在python2中使用的import urllib——对应的,在python3中使用import urllib.request , import urllib.error,import urllib.parse

在python2中使用的import urlparse——对应的,在python3中使用import urllib.parse

在python2中使用的import urllib2.urlopen——对应的,在python3中使用import urllib.request.urlopen

在python2中使用的import urllib.urlencode——对应的,在python3中使用import urllib.parse.urlencode

在python2中使用的import urllib.quote——对应的,在python3中使用import urllib.request.quote

在python2中使用的import cookielib.CookieJar——对应的,在python3中使用import http.CookieJar

在python2中使用的import urllib2.Request——对应的,在python3中使用import urllib.request.Request

 

工作之余持续更新

 

 

转载于:https://www.cnblogs.com/bangyongfeng/p/9272103.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值