<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # Python2.x與3??.x版本區別 Python的3??.0版本,常被稱為Python 3000,或簡稱Py3k。相對于Python的早期版本,這是一個較大的升級。 為了不帶入過多的累贅,Python 3.0在設計的時候沒有考慮向下相容。 許多針對早期Python版本設計的程式都無法在Python 3.0上正常執行。 為了照顧現有程式,Python 2.6作為一個過渡版本,基本使用了Python 2.x的語法和庫,同時考慮了向Python 3.0的遷移,允許使用部分Python 3.0的語法與函數。 新的Python程式建議使用Python 3.0版本的語法。 除非執行環境無法安裝Python 3.0或者程式本身使用了不支援Python 3.0的第三方庫。目前不支援Python 3.0的第三方庫有Twisted, py2exe, PIL等。 大多數第三方庫都正在努力地相容Python 3.0版本。即使無法立即使用Python 3.0,也建議編寫相容Python 3.0版本的程式,然后使用Python 2.6, Python 2.7來執行。 ## 主要變化 Python 3.0的變化主要在以下幾個方面: print語句沒有了,取而代之的是print()函數。 Python 2.6與Python 2.7部分地支持這種形式的print語法。在Python 2.6與Python 2.7里面,以下三種形式是等價的: ``` print "fish" print ("fish") #注意print后面有個空格 print("fish") #print()不能帶有任何其它參數 ``` 然而,Python 2.6實際已經支持新的print()語法: ``` from __future__ import print_function print("fish", "panda", sep=', ') ``` 新的str類別表示一個Unicode字串,相當于Python 2.x版本的unicode類別。而位元組序列則用類似b"abc"的語法表示,用bytes類表示,相當于Python 2.x的str類別。 現在兩種類別不能再隱式地自動轉換,因此在Python 3.x里面"fish"+b"panda"是錯誤。正確的寫法是"fish"+b"panda".decode("utf-8")。 Python 2.6可以自動地將位元組序列識別為Unicode字串,方法是: ``` from __future__ import unicode_literals print(repr("fish")) ``` 除法運算符"/"在Python 3.x內總是返回浮點數。而在Python 2.6內會判斷被除數與除數是否是整數。如果是整數會返回整數值,相當于整除;浮點數則返回浮點數值。 為了讓Python 2.6統一返回浮點數值,可以: ``` from __future__ import division print(3/2) ``` * 捕獲異常的語法由except exc, var改為except exc as var。使用語法except (exc1, exc2) as var可以同時捕獲多種類別的異常。 Python 2.6已經支援這兩種語法。 * 集合(set) 的新寫法:{1,2,3,4}。注意{}仍然表示空的字典(dict) 。 * 字典推導式(Dictionary comprehensions) {expr1: expr2 for k, v in d},這個語法等價于 ``` result={} for k, v in d.items(): result[expr1]=expr2 return result ``` 集合推導式(Set Comprehensions) {expr1 for x in stuff}。這個語法等價于: ``` result = set() for x in stuff: result.add(expr1) return result ``` * 八進制數必須寫成0o777,原來的形式0777不能用了;二進制必須寫成0b111。新增了一個bin()函數用于將一個整數轉換成二進制字串。 Python 2.6已經支援這兩種語法。 * dict.keys(), dict.values??(), dict.items(), map(), filter(), range(), zip()不再返回列表,而是迭代器。 * 如果兩個物件之間沒有定義明確的有意義的順序。使用<, >, <=, >=比較它們會投擲異常。比如1 < ""在Python 2.6里面會返回True,而在Python 3.0里面會投擲異常。現在cmp(), instance.__cmp__()函數已經被刪除。 * 可以注釋函數的參數與返回值。此特性可方便IDE對原始碼進行更深入的分析。例如給參數增加類別訊息: ``` def sendMail(from_: str, to: str, title: str, body: str) -> bool: pass ``` * 合并int與long類型。 * 多個模塊被改名(根據PEP8): | 舊的名字 | 新的名字 | | --- | --- | | _winreg | winreg | | ConfigParser | configparser | | copy_reg | copyreg | | Queue | queue | | SocketServer | socketserver | | repr | reprlib | * StringIO模塊現在被合并到新的io模組內。 new, md5, gopherlib等模塊被刪除。 Python 2.6已經支援新的io模組。 * httplib, BaseHTTPServer, CGIHTTPServer, SimpleHTTPServer, Cookie, cookielib被合并到http包內。 * 取消了exec語句,只剩下exec()函數。 Python 2.6已經支援exec()函數。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看