因为看的是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
工作之余持续更新