日韩 亚洲一区二_久久vs国产综合色大全_国产精品福利在线_欧美在线一级A片免费观看欧美在线_女同性毛片60分钟

您現(xiàn)在所在的位置:首頁(yè) >關(guān)於奇酷 > 媒體報(bào)導(dǎo ) > Python瘋長(zhǎng)!Python 3.7 新特性!

Python瘋長(zhǎng)!Python 3.7 新特性!

來(lái)源:奇酷教育 發(fā)表於:

  不管你是否承認(rèn),人工智慧已經(jīng)爆發(fā),你我早已是局中人。  不信?  當(dāng)司機(jī)打開(kāi)滴滴APP,靠說(shuō)話(huà)輸(shū)入目的地——這是語音識別;  當(dāng)

  不管你是否承認(rèn),人工智慧已經(jīng)爆發(fā),你我早已是局中人。
 
  不信?
 
  當(dāng)司機(jī)打開(kāi)滴滴APP,靠說(shuō)話(huà)輸(shū)入目的地——這是語音識別;
 
  當(dāng)走進(jìn)火車(chē)站,機(jī)器查驗(yàn)身份證——這是圖像識別;
 
  當(dāng)你打開(kāi)度秘APP,說(shuō)想去一家不辣、好吃、人均消費(fèi)100元左右的餐廳——這是自然語言處理。
 
  人工智慧火爆,人工智慧第一語言Python瘋長(zhǎng)。
 
  近日,Python官網(wǎng)靜悄悄地發(fā)布了一條大消息:正式發(fā)布 Python 3.7.0!同時(shí)發(fā)布的還有Python 3.6.6穩(wěn)定版。
 
  Python官網(wǎng)宣布,正式發(fā)布Python 3.7.0。
 
  全文如下:
 
  2018年6月27日星期三
 
  Python 3.7.0現(xiàn)已推出(同時(shí)還有3.6.6版本)!
 
  代表Python開(kāi)發(fā)社區(qū)和Python 3.7發(fā)布團(tuán)隊(duì),我們很高興地宣布Python 3.7.0現(xiàn)在可以使用了。Python 3.7.0是Python語言的最新功能版本,包含許多新的功能和優(yōu)化。你可以在這裡下載 Python 3.7.0:
 
  https://www.python.org/downloads/release/python-370/
 
  Python的大多數(shù)第三方庫(kù)也應(yīng)該儘快支持3.7.0軟體包。
 
  有關(guān)3.7系列功能的更多信息,請參閱Python 3.7中的新功能文檔。有關(guān)3.7.0中所做更改的詳細(xì)信息,請參見(jiàn)其更改日誌。3.7系列的維護(hù)版本將從2018年7月開(kāi)始定期進(jìn)行。
 
  我們希望您喜歡Python 3.7!
 
  另附:我們也很高興地宣布,Python 3.6.6的下一個(gè)維護(hù)版本Python 3.6可以使用了:https://www.python.org/downloads/release/python-366/
 
  感謝所有幫助Python開(kāi)發(fā)和這些發(fā)布的志願者!歡迎通過(guò)志願或組織捐贈支持Python軟體基金會(huì)的工作。
 
  1
 
  PYTHON 3.7.0 重大功能改進(jìn)
 
  那麼,這次新發(fā)布的Python 3.7.0 有哪些重要的改進(jìn)呢?總的來(lái)說(shuō),
 
  新的syntax功能:
 
  PEP 563,推遲了類(lèi)型注釋(type annotations)的評(píng)估
 
  向後不兼容的syntax更改:
 
  async 和 await 現(xiàn)在是保留關(guān)鍵詞
 
  新的庫(kù)模塊:
 
  contextvars:PEP 567 - 上下文變量
 
  dataclasse:PEP 557 - 數(shù)據(jù)類(lèi)
 
  importlib.resources
 
  新的內(nèi)置功能:
 
  PEP 553,新的 breakpoint() 函數(shù)
 
  Python 數(shù)據(jù)模型改進(jìn):
 
  PEP 562,定製訪(fǎng)問(wèn)模塊屬性
 
  PEP 560,核心支持 typing module 和 generic types
 
  dict 對(duì)象的插入順序保存性質(zhì)被納入Python官方語言規(guī)範
 
  標(biāo)準(zhǔn)庫(kù)的重大改進(jìn):
 
  asyncio 模塊增加了新功能,提高了可用性和性能
 
  time 模塊新增納秒級(jí)函數(shù)支持,新函數(shù)將納秒數(shù)作為整數(shù)值返回
 
  CPython 部署改進(jìn):
 
  避免使用 ASCII 作為默認(rèn)文本編碼
 
  PEP 552,deterministic .pycs
 
  新的 runtime 模式
 
  PEP 565,改進(jìn)了 DeprecationWarning 處理
 
  C API 改進(jìn):
 
  PEP 539,用於線(xiàn )程本地存儲(chǔ)的新C API
 
  文檔改進(jìn):
 
  PEP 545,Python文檔翻譯
 
  新增日語、法語和韓語文檔
 
  2
 
  PYTHON 3.7.0 新增特性
 
  那麼,接下來(lái)詳細(xì)看看這些功能。
 
  PEP 563:推遲對(duì)注釋語句的評(píng)估
 
  Python的類(lèi)型提示有兩(liǎng)個(gè)明顯的可用性問(wèn)題:
 
  注釋只能使用當(dāng)前範圍內(nèi)已有的名稱(chēng),換(huàn)句話(huà)說(shuō),它們不支持任何類(lèi)型的前向引用; 注釋原始碼對(duì)Python程序的啟動(dòng)時(shí)間有不利影響。
 
  通過(guò)推遲注釋評(píng)估可以解決這兩(liǎng)個(gè)問(wèn)題。編譯器不是編譯在定義時(shí)在注釋中執(zhí)行表達(dá)式的代碼,而是將注釋以字符串形式存儲(chǔ)。如果需要,可以使用typing.get_type_hints()在運(yùn)行時(shí)解析注釋。在不需要解析的常見(jiàn)情況下,注釋的存儲(chǔ)成本更低,並且啟動(dòng)時(shí)間更快。
 
  PEP 538:C語言環(huán)境強(qiáng)制
 
  Python 3系列中的一個(gè)持續(xù)的挑戰是確定一種合理的默認(rèn)策略,用於處理目前在非Windows平臺(tái)上使用默認(rèn)C或POSIX語言環(huán)境的“7-bit ASCII”文本編碼假設(shè)。
 
  PEP 538更新默認(rèn)解釋器命令行界面,自動(dòng)將該語言環(huán)境強(qiáng)制轉(zhuǎn)換(huàn)為可用的基於UTF-8的語言環(huán)境。 自動(dòng)設(shè)置LC_CTYPE意味著核心解釋器和C擴展(例如readline)將假設(shè)使用UTF-8作為默認(rèn)文本編碼,而不是ASCII。
 
  PEP 540:強(qiáng)制UTF-8 Runtime 模式
 
  新的-X utf8命令行選項(xiàng)和PYTHONUTF8環(huán)境變量可用於啟用CPython UTF-8模式。
 
  PEP 553:內(nèi)置breakpoint()
 
  Python 3.7新增了內(nèi)置函數(shù)breakpoint(),作為進(jìn)入Python調(diào)試器的簡(jiǎn)單而一致的方式。
 
  PEP 539:新增用於線(xiàn )程本地存儲(chǔ)的C API
 
  雖然Python為線(xiàn )程本地存儲(chǔ)支持提供了一個(gè)C API; 但現(xiàn)有的線(xiàn )程本地存儲(chǔ)(TLS)API使用int來(lái)表示所有平臺(tái)上的TLS密鑰,但這既不符合POSIX標(biāo)準(zhǔn),也不具備任何實(shí)際意義上的便攜性。
 
  PEP 539通過(guò)向CPython提供新的線(xiàn )程本地存儲(chǔ)(TSS)API來(lái)改變這一點(diǎn),該API取代了在CPython解釋器中使用現(xiàn)有TLS API,同時(shí)棄用現(xiàn)有API。TSS API使用新類(lèi)型Py_tss_t而不是int來(lái)表示TSS密鑰,這將允許在本地TLS密鑰定義的平臺(tái)上構(gòu )建CPython。
 
  PEP 562:定製對(duì)模塊屬性的訪(fǎng)問(wèn)
 
  Python 3.7支持在模塊上定義__getattr __(),並且只要沒有找到模塊屬性就會(huì)調(diào)用它。也允許在模塊上定義__dir __()。
 
  PEP 564:time 內(nèi)置函數(shù)支持納秒
 
  為了避免精度損失,PEP 564在timemodule添加了六個(gè)新“納秒”(nanosecond)變量:
 
  time.clock_gettime_ns()
 
  time.clock_settime_ns()
 
  time.monotonic_ns()
 
  time.perf_counter_ns()
 
  time.process_time_ns()
 
  time.time_ns()
 
  PEP 565:在__main__中默認(rèn)顯示DeprecationWarning
 
  DeprecationWarning的默認(rèn)處理已更改,以便默認(rèn)情況下再次顯示這些警告,但僅當(dāng)觸發(fā)它們的代碼直接在__main__模塊中運(yùn)行時(shí)才會(huì)顯示。
 
  PEP 560:新增支持類(lèi)型模塊和泛型
 
  PEP引入了兩(liǎng)種特殊方法__class_getitem __()和__mro_entries__,這些方法現(xiàn)在被大多數(shù)類(lèi)和特殊構(gòu )造用於輸(shū)入。結(jié)果,不同類(lèi)型的各種操作的速度提高了7倍,可以使用泛型而沒有元類(lèi)衝突,並且修改了類(lèi)型模塊中長(zhǎng)期存在的一些bug。
 
  PEP 552:基於哈希的.pyc文件
 
  PEP 552擴展了pyc格式,允許源文件的哈希值用於invalidation,而不是源timestamp。這種.pyc文件稱(chēng)為“hash-based”。默認(rèn)情況下,Python仍然使用基於時(shí)間戳的invalidation,並且不會(huì)在運(yùn)行時(shí)生成基於哈希的.pyc文件。可以使用py_compile或compileall生成基於哈希的.pyc文件。
 
  PEP 545:Python文檔翻譯
 
  PEP 545描述了創(chuàng)建和維護(hù)Python文檔翻譯的過(guò)程。添加了三種語言的翻譯:
 
  日本:https://docs.python.org/ja/
 
  法語:https://docs.python.org/fr/
 
  韓國(guó):https://docs.python.org/ko/
 
  開(kāi)發(fā)運(yùn)行時(shí)模式:-X dev
 
  新的-X dev命令行選項(xiàng)或newPYTHONDEVMODE環(huán)境變量可用於啟用CPython的開(kāi)發(fā)模式。在開(kāi)發(fā)模式下,CPython執(zhí)行額外的運(yùn)行時(shí)檢查,這些檢查無(wú)法在默認(rèn)情況下啟用。
 
  3
 
  性能提升及文檔下載
 
  根據(jù)官方文檔表示,新升級(jí)的各種優(yōu)化使 Linux 上的 Python 啟動(dòng)時(shí)間減少了 10%,而 macOS 上的啟動(dòng)時(shí)間更是減少了 30%。
 
  由於字節(jié)碼更改,方法調(diào)用現(xiàn)在可以快 20%。
 
  由於PEP 560工作,typing 導(dǎo )入時(shí)間減少了 7 倍,現(xiàn)在許多 typing 操作也更快。
 
  等等優(yōu)化,還有更多。
 
  Python官網(wǎng)有非常全面的文檔:
 
  也列出了轉(zhuǎn)換(huàn)為新版本會(huì)遇到的問(wèn)題和應(yīng)對(duì)方法:
 
  4
 
  下載地址
 
  Python 3.7.0 下載地址為:https://www.python.org/downloads/