Python2轉Python3比較

mumangtao發表於2018-11-05

Python2 轉Python3

1. 工具命令

* python2
    * python/pip/pydoc  
* python3
    * python3/pip3/pydoc3

2. 語法

  1. exception

    python3
        
    try 
        # code here 
    except KeyError as e:
        pass
    
  2. print

    python2:
    print "abc"
    
    python3:
    print("abc")
    
  3. urllib

    python3統一了 urllib 和urllib2

    python2 :
    import urllib ,urllib2 
    
    python3 :
    import urllib
    import urllib.parse, urllib.request
    
    urllib.parse.urlencode(values)
    urllib.request.urlopen(uri)
    raise  urllib.request.HTTPError as  e
    urllib.parse.urljoin(self.host, url)

    注意:

    urllib.request 所有的都在urllib包下
    
  4. configparser

    python2 :
    import ConfigParser
    config = ConfigParser.ConfigParser()
    
    python3 :
    import configparser
    config = configparser.ConfigParser()
        
  5. reload

    python2
    import sys
    reload(sys)
        
    python3
    import importlib,sys 
    importlib.reload(sys)
    
  6. sys.setdefaultencoding

    python2:
    import sys
    sys.setdefaultencoding(`utf8`)
    
    python3 :
    預設unicode,不支援該語法
        
  7. dict.has_key

    python2:
    if adict.has_key(key1): pass
    
    python3:
    沒有has_key方法
    if key1 in adict: pass
    
    


相關文章