【呆鳥譯Py】Python 4.0 預(yù)計推出的新功能

Python 4.0 預(yù)計推出的新功能

Python大咖談 - Kenneth Reitz 與 Mike Driscoll
Python大咖談 - Brett Cannon(一)
Python大咖談 - Brett Cannon(二)

原文作者:Charles Leifer

原文鏈接:New features planned for Python 4.0


Python 3.8 發(fā)布在即,核心開發(fā)者團隊讓我總結(jié)一下最近討論的 Python 4.0 預(yù)計推出的新功能,代碼名為“ Ouroboros:自噬蛇”。Python 4.0 是大家翹首以盼的新版本,也將成為 Python 歷史上的重大里程碑,在此感謝為之努力奮斗的 100 多名貢獻者。

  • 經(jīng)過郵件列表上的論戰(zhàn),PEP8 里的一行 79 個字符的限制將增加至一行 89.5 個字符。IDE 用戶終于可以充分利用 30" 超寬 4K 顯示器的優(yōu)勢啦!這是我們對每行 100 個字符這一呼聲的妥協(xié),大家各退一步。

  • 所有新的支持庫與標(biāo)準(zhǔn)庫模塊的標(biāo)題中必須包含 For Humans(“以人為本”)。

  • Python 4.0 終將推出一種新的字符串類型,z-strings, 這是一種 C 語言風(fēng)格的空終止字節(jié)字符串。只要在字符串加上前綴 z,如 z'my string',Python 就會自動將它轉(zhuǎn)換成空終止字符串(NULL-terminated)。注意:z-strings 不能用于現(xiàn)有需要獲取字符串參數(shù)的 API,應(yīng)該先將它解碼為 Unicode 字符串,或轉(zhuǎn)換為字節(jié)(bytes)。

  • Type-hinting(類型提示)擴展將提供一些更實用的功能。新推出的簡化版類型提示將被稱為 Type Whispering(類型低語)。

  • 他碼弟,我們要用 libuv[1]Twisted acyncio 提供事件循環(huán)(Event Loop)支持。

  • Python 4.0 將支持在單一關(guān)鍵詞前使用 async 關(guān)鍵詞,并且鼓勵使用 async do so 這種方式。用 Cargo-Culting[2] 方式編程,讓魔法關(guān)鍵詞出現(xiàn)在所有地方也沒什么不好,大家都希望程序能跑得更快,是不是?

  • 在 Python 3.7 版的 namedtupledataclasses 基礎(chǔ)上,Python 4.0 將增加幾個千行 Decorator-Hack,用以實現(xiàn)簡單構(gòu)建類型。

  • 全局解釋鎖(GIL)已經(jīng)被移除了。

  • 開玩笑的!反之,我們一直努力,希望實現(xiàn)在一個線程里,處理多個解釋器數(shù)據(jù)結(jié)構(gòu)更容易。別客氣,以后再感謝我們吧!

  • 需要將 bytes 轉(zhuǎn)為 str這件事,讓眾多被我們說服從 Python 2.x 升級到 3.x 的公司為我們提供了不少工作機會。本著同樣的精神,很高興告訴大家,今后會有兩個 int 類型,其中,int 是 32 位帶符號的整數(shù),long 是 64 位帶符號的整數(shù)??赡軙腥苏f “Python 2 不就是這樣嗎?”,對于這點,我們要告訴大家,以后再也用不了 int 了,要把它們都轉(zhuǎn)換為 long。

  • 鑒于,Python 2 升級 3 的工具大獲成功,我們計劃推出 Python 3 升級 4 的工具,可以自動將代碼轉(zhuǎn)換為上述新特性。

很遺憾,以下特性未能入選 Python 4.0 升級計劃:

  • 我們嘗試過用 Rust 重寫解釋器的部分功能,但沒人知道怎么禁用 borrow-cheker,所以只好放棄了。

  • 沒有switch 語句,不過,你可以用 dict。

  • concurrent.Pasts(過去) 與concurrent.Present(現(xiàn)在)沒有合并,不過,沒關(guān)系,我們還有 future(未來),是不是?

  • 沒人能搞懂 Twisted asyncio 如何運作,屆時,將不會對這方面的內(nèi)容有所改進。Python 軟件基金會建議所有新項目都使用 gevent。

  • 很抱歉,我們沒有對打包“環(huán)境”做出任何改進。

我們十分期待新版發(fā)布,并會竭盡所能做好在它能用之前的幾個小版本。

要有信心!記住 Python 的宣言:

唯有死亡,才會永生!


呆鳥云:“不知道各位看完本文有什么感想,反正我是呆了,引用文中一句話,‘Just kidding!’,這篇文章愚人節(jié)發(fā)布是不是會更好。”

呆鳥還云:“翻譯不易,四處求證、三天翻譯、兩天校對,只求一秒點贊?!?/p>

Python大咖談 - Kenneth Reitz 與 Mike Driscoll
Python大咖談 - Brett Cannon(一)
Python大咖談 - Brett Cannon(二)


  1. Libuv,跨平臺異步 IO 支持庫。 ?

  2. Cargo-Culting 編程,Cargo Cults 一詞源于二戰(zhàn)期間,美國軍方將太平洋小島當(dāng)作補給站,在島上修建飛機跑道運輸物資。那里的土著人沒見過飛機,以為飛機是神跡,會帶來物品與食物,于是修建了飛機祭臺。Cargo-Cult 編程則是指照搬編程高手的代碼,只知其然,不知其所以然,但依然能搞定工作任務(wù)的一種編程方式。 ?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、Python簡介和環(huán)境搭建以及pip的安裝 4課時實驗課主要內(nèi)容 【Python簡介】: Python 是一個...
    _小老虎_閱讀 6,353評論 0 10
  • 一、PyCharm的基本使用1.1、注釋:為了方便自己或者其他人查看單行注釋:用 # 號單行注釋多行注釋: 用 ...
    IIronMan閱讀 9,095評論 3 18
  • http://python.jobbole.com/85231/ 關(guān)于專業(yè)技能寫完項目接著寫寫一名3年工作經(jīng)驗的J...
    燕京博士閱讀 7,828評論 1 118
  • 記得以前曾經(jīng)開玩笑的說,以后不是在相親的路上就是相親中。但內(nèi)心還是覺得自己離相親蠻遙遠的…… 但上天總會讓你愿望成...
    滴嗒ZF閱讀 254評論 0 0
  • 孩子急、慢性鼻炎,出現(xiàn)鼻塞和呼吸困難等癥狀,除推拿手部穴位外,還要做鼻部推拿,可以行氣活血,疏通堵塞的精力,具有祛...
    慧媽艾灸養(yǎng)生閱讀 1,744評論 0 3

友情鏈接更多精彩內(nèi)容