Python3常見問題和解決方案(Python2 和 Python3的區(qū)別)[持續(xù)更新]

1. configparser

try:
    import configparser as ConfigParser # py3
except:
    import ConfigParser # py2

configparser
— Configuration file parser
簡介:提供了解決方法地回。

2. thread

try:
    import thread  # py2
except:
    import _thread as thread # py3

3. hashlib

# py2
m = hashlib.md5(data)


# py3
m = hashlib.md5(data.encode("utf8"))

4. 開啟一個(gè)簡單的web server(單行服務(wù)器):

# py2
$ python -m SimpleHTTPServer
Serving HTTP on 0.0.0.0 port 8000 ...

# py3
$ python -m http.server
Serving HTTP on 0.0.0.0 port 8000 ...

5. base64.b64encode

#py2
base64.b64encode(feed_back)

#py3
base64.b64encode(feed_back.encode('utf-8'))


#py2
base64.encodestring(feed_back)

#py3
base64.encodestring(feed_back.encode('utf-8'))

6.long 類型

Py3.X去除了long類型逞敷,現(xiàn)在只有一種整型——int昔园,但它的行為就像2.X版本的long 
# py2
>>> long(1468984980.116425)
1468984980L
#py3
>>> int(1468984980.116425)
1468984980

7. iterterms()

在python2中冶伞,同時(shí)提供iterxxxx和xxxx方法丙躏。比如iteritems, items. 在python3 中不出現(xiàn)iterxxx. 默認(rèn)都是生成器谚攒。

# py2
>>> a = {'a':'jia','b':'luo'}
>>> dir(a)
['__class__', '__cmp__', '__contains__', '__delattr__', '__delitem__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'has_key', 'items', 'iteritems', 'iterkeys', 'itervalues', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values', 'viewitems', 'viewkeys', 'viewvalues']
>>> for i in a.iteritems():
...     print i
...
('a', 'jia')
('b', 'luo')

#py3
>>> a = {'a':'jia','b':'luo'}
>>> dir(a)
['__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']
>>> a.items()
dict_items([('a', 'jia'), ('b', 'luo')])
>>> for i in a.items():
...     print(i)
...
('a', 'jia')
('b', 'luo')

8. queue

try:
    from Queue import PriorityQueue # py2
except:
    from queue import PriorityQueue # py3

9. raise

# py2
try:
    del self[key]
except KeyError, k:
    raise AttributeError, k

# py3
try:
    del self[key]
except KeyError as k:
    raise AttributeError(k) 

10. exceptions

# py2
>>> from exceptions import UnicodeEncodeError
# py3
移除了 exceptions模塊鸡典。

11. reload

# py2
import sys
from imp import reload
reload(sys)
# py3
import sys
from imp import reload
reload(sys)

12. sys.setdefaultencoding("utf-8")

# py2
import sys
sys.setdefaultencoding("utf-8")
# py3
取消了setdefaultencoding()

[轉(zhuǎn)]python3中reload()
簡介:
Python 3.0把reload內(nèi)置函數(shù)移到了imp標(biāo)準(zhǔn)庫模塊中。它仍然像以前一樣重載文件榛丢,但是铲球,必須導(dǎo)入它才能使用

13. urllib&urllib2

#py2
>>> import urllib
>>> urllib.urlencode({'a':'jia','b':'xiao','c':'lei'})
'c=lei&a=jia&b=xiao'

#py3
>>> import urllib
>>> urllib.parse.urlencode({'a':'jia','b':'xiao','c':'lei'})
'c=lei&a=jia&b=xiao'

#py2
import urllib2
request = urllib2.Request(url)
opener = urllib2.urlopen(request)
except urllib2.HTTPError as msg:
except urllib2.URLError as msg:
# python2 中的urllib2, 在Python3中已經(jīng)并入urllib.

#py3
import urllib.request
request = urllib.request.Request(url)
opener = urllib.request.urlopen(request)
except urllib.error.HTTPError as msg:
except urllib.error.URLError as msg:

14.url

try:
    from urlparse import urlparse # py2
except:
    from urllib.parse import urlparse # py3

py3中涕滋,很多模塊集中到了urllib 中睬辐。

15.DES

# py2
from des import DES

Python3.x和Python2.x的區(qū)別
http://my.oschina.net/lenglingx/blog/205626
簡介:
介紹還是很充分的。

讓python同時(shí)兼容python2和python3的8個(gè)技巧分享
http://www.jb51.net/article/52075.htm
簡介:
一些擴(kuò)展也很有意思宾肺。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末溯饵,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子锨用,更是在濱河造成了極大的恐慌丰刊,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件增拥,死亡現(xiàn)場離奇詭異啄巧,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)掌栅,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進(jìn)店門秩仆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人猾封,你說我怎么就攤上這事澄耍。” “怎么了晌缘?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵齐莲,是天一觀的道長。 經(jīng)常有香客問我磷箕,道長选酗,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任岳枷,我火速辦了婚禮芒填,結(jié)果婚禮上呜叫,老公的妹妹穿的比我還像新娘。我一直安慰自己殿衰,他們只是感情好怀偷,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著播玖,像睡著了一般。 火紅的嫁衣襯著肌膚如雪饭于。 梳的紋絲不亂的頭發(fā)上蜀踏,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天,我揣著相機(jī)與錄音掰吕,去河邊找鬼果覆。 笑死,一個(gè)胖子當(dāng)著我的面吹牛殖熟,可吹牛的內(nèi)容都是我干的局待。 我是一名探鬼主播,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼菱属,長吁一口氣:“原來是場噩夢啊……” “哼钳榨!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起纽门,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤薛耻,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后赏陵,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體饼齿,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年蝙搔,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了缕溉。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,117評論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡吃型,死狀恐怖证鸥,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情败玉,我是刑警寧澤敌土,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站运翼,受9級特大地震影響返干,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜血淌,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一矩欠、第九天 我趴在偏房一處隱蔽的房頂上張望财剖。 院中可真熱鬧,春花似錦癌淮、人聲如沸躺坟。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽咪橙。三九已至,卻和暖如春虚倒,著一層夾襖步出監(jiān)牢的瞬間美侦,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工魂奥, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留菠剩,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓耻煤,卻偏偏與公主長得像具壮,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子哈蝇,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 可以看我的博客 lmwen.top 或者訂閱我的公眾號 簡介有稍微接觸python的人就會(huì)知道棺妓,python中...
    ayuLiao閱讀 3,119評論 1 5
  • 原文: https://wiki.python.org/moin/Python2orPython3 在項(xiàng)目開發(fā)中,...
    林灣村龍貓閱讀 4,059評論 0 6
  • 不要把理想理想化买鸽,這是今天聽到的比較有趣的可以深思的一句話涧郊。 感覺自己近年的很多行為都可以用這一句話來概括。 初中...
    郭云閱讀 176評論 1 1
  • 我一直認(rèn)為眼五,“法律”與各種司法機(jī)構(gòu)妆艘,它存在之初是廣大人民為了維護(hù)他們的情感利益而授權(quán)創(chuàng)建的相關(guān)條文與機(jī)構(gòu)。也就是說...
    最愛Kevin的小歡歡閱讀 897評論 1 1