欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

聊聊 Python 的內置電池

系統 1619 0

本文原創并首發于公眾號【 Python貓 】,未經授權,請勿轉載。

原文地址:https://mp.weixin.qq.com/s/XzCqoCvcpFJt4A-E4WMqaA

(一)

最近,我突然想到一個問題: 相比其它語言,有哪些概念或習慣叫法是 Python 特有的?

在朋友圈提出這個問題后,我得到最多的回復是—— Pythonic 。這個回復一點都不意外,名字中自帶 Python 的,當然是特有的啦,與它相似的,還有 Pythonista

這兩個詞是啥意思呢?Python 圈內流傳著一個說法“人生苦短,我用 Python”,人們相信存在著最佳的實踐方式,采用這種方式是最美的、最高效的、最優雅的,也即是 Pythonic ,而這樣做的人(或以此為追求的人)則自稱是 Pythonista。這個稱號是有別于 Pythoner 或者 Pythonist 的,簡單地說就是,它更有追求、更有逼格。

除了以上兩個,Python 還有眾多獨特的叫法,例如終生仁慈獨裁者、裝飾器、上下文管理器、推導式與生成式、鴨子類型、猴子補丁、魔術方法、GIL、內置電池,等等。它們有的并不是 Python 所原創或獨有,但是卻因為它才廣為人知,它們在 Python 中是代表性的存在物。

(二)

這些內容都很有意思,本文唯獨想聊聊它—— 內置電池

Batteries Included 這個叫法是 Python 特有的,它指的是 Python 擁有“內置電池”,也就是自帶豐富多樣的標準庫,開箱即用,動力十足。

在《PEP 206 -- Python Advanced Library》中,它提出了“內置電池的哲學”(Batteries Included Philosophy):擁有豐富而通用的標準庫,無需用戶單獨下載就能立即使用。還說這使得 Python 領先于很多項目。

根據官方文檔顯示,Python 內置了 200 多個標準庫,類型豐富多樣,包括字符處理、數據類型、數值計算、文件處理、并發執行、網絡通信、多媒體服務、圖形界面、調試與開發、以及操作系統專有服務等等。

內置電池為 Python 提供了一種自給自足的能力(self-sufficient),在大多數情況下,用戶不需要再去下載和安裝單獨的軟件包,因此也免去一大堆的依賴問題的折磨。

(三)

某些編程語言中也有內置電池的概念,例如 Perl、Ruby、PHP等等,還有的語言會強調自己內置了強大的功能,例如 Erlang(一切皆進程)、Go(goroutine 機制)。

然而,這個叫法在 Python 中被叫得最響,也被推廣到了技術生態中的其它項目里,幾乎成了 Python 的專有名詞。

在維基百科上搜索“Batteries Included”,該條目有 4 個解釋,其中之一表明它是 Python 的 Motto ,這個詞的意思是座右銘、格言、箴言,足見分量之重了吧。

(四)

內置電池做不到無所不包,因此需要所謂的第三方庫,而 Python 也以三方庫豐富而聞名。

PyPI Python Package Index 的簡稱,即 Python 庫索引,是一個用來管理三方庫的項目,根據網站顯示,目前有 18 萬個三方庫,以及它們的 135 萬個發行版本。

就是說,Python 也擁有強大的外置電池,所以其實它是 雙驅動 的。

(五)

雙驅動本來相安無事,互為表里,但是,內置電池卻遭到了越來越多的指責。

在今年 5 月的官方 PyCon 大會上,演講嘉賓 Amber Brown 做了專門的分享,主要話題就是吐槽這內置電池正在“漏電”(Leaking):

  • 應用程序需要的不僅僅是標準庫
  • 質量差,功能落后,代碼過時
  • 標準庫模塊排擠創新

她的想法是移除一些標準庫,例如 asyncio 及大多數的新特性,遷移到 PyPI,擁抱社區。這樣做的預期效果是:內置電池會變得輕量小型化、高質量,同時三方庫的生態系統也能得到進化。

其他開發人員對這個話題也進行了討論。

標準庫的維護團隊表示,遷移部分模塊的工作已經在展開了,但這需要經過仔細的設計,另外,不容忽視的是,遷移庫到 PyPI 也要求測試配置的工作量。

還有人提出反對意見,認為精簡標準庫可能會破壞下游代碼,而且有的企業用戶只信任標準庫而排斥三方庫,這無疑會增加用戶的負擔。

(六)

我們的很多電子設備都是由電池驅動的,雖然它們的形式與材質各種各樣,但是不可避免會遇到老化的問題(某種手機甚至會爆炸)。

Python 的內置電池也不例外,可是,這個電池的修理或替換,卻不像物理世界的電池那般容易。

官方在十幾年前提出了 PEP-206 與 PEP-3108,那時核心開發者們就發現有些標準庫容易被入侵、設計不佳、有更好的替代庫,因此推薦了很多款第三方庫,以作為標準庫的替代選項。這些年來,很多廢棄的庫已退出舞臺,但更多的新庫也加了進來,革命尚未成功。

今年 5 月,在 PyCon 大會引發的討論之后,有開發者發起了 PEP-594,提議將“壞死的電池”(dead batteries)移出標準庫。

目前,該 PEP 仍處于草案(Draft)狀態,但已基本成為社區共識。

PEP 中提議移除工作從 Python 3.8 開始,因為它的發布時間剛好在 Python 2.7 停止維護之前,可以平滑地承接大版本遷移的用戶。然后,按照有序的清理計劃,最終在 Python 3.10 版本完成所有廢棄模塊的移除。

也就是說,內置電池的“手術”加速了,未來幾年里,這將成為一個常態。

(七)

內置電池的哲學助力了 Python 發展壯大,攻城略地,成為最主流的編程語言之一。

然而它面臨的挑戰是:功能齊備與輕量可維的矛盾、官方支撐與社區分治的選擇,因此,必然會走到今天的局面。

正如任何大型項目都可能遇到內存泄漏與性能退化的問題一樣,Python 這個項目也是。剔除壞死的組織,精兵簡政,革故鼎新,跟上時代,這些是 Python 核心團隊正在做的事。

從去年末以來,我持續關注著 Python 最高決策層的選舉,而在上個月,我恰好翻譯了一篇文章《GIL 已經被殺死了么?》介紹了 GIL 的移除計劃。

這些事件都表明著一件事: Python 充滿活力,大蟒蛇蛻皮后,將會迎來新生。

我們何其幸運,正好作為見證者。其它就不用多說了,重溫一下這個偉大的口號吧——人生苦短,我用 Python。

公眾號【 Python貓 】, 本號連載優質的系列文章,有喵星哲學貓系列、Python進階系列、好書推薦系列、技術寫作、優質英文推薦與翻譯等等,歡迎關注哦。后臺回復“ 愛學習 ”,免費獲得一份學習大禮包。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲精品乱码久久久久久久久久 | 亚洲人成网站看在线播放 | 国产成人自拍视频在线观看 | 特级毛片免费 | 亚洲入口 | 欧美在线视频一区二区三区 | 国亚洲欧美日韩精品 | 久久亚洲精品中文字幕 | 国产亚洲精品看片在线观看 | 色午夜 | 成人久久久 | 爱爱视频在线观看 | 国产AV一区二区三区传媒 | 色综合天天天天做夜夜夜夜做 | 日韩精品久久久久 | 日日碰日日操 | 国产原创91 | 小明天天看 | 草久网 | 波多野结衣中文字幕2022免费 | 亚洲综合视频在线观看 | 日韩在线免费视频观看 | 国产精品男人的天堂 | 欧美区日韩区 | 成人瑟瑟 | 日本三级香港三级人妇99 | 欧美精品黄页免费高清在线 | 欧美精品黄页免费高清在线 | 婷婷色爱区综合五月激情韩国 | 波多野结衣在线资源 | 久久久久国产亚洲日本 | 久草在线播放视频 | 国产探花在线精品一区二区 | 成人欧美一级毛片免费观看 | 成人免费大片a毛片 | 欧美成人一级 | www.久草| 国产精品亚洲va在线观看 | 亚洲自拍另类 | 99久久精品免费看国产 | 日本无码欧美激情在线视频 |