日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Python 2.x 淘汰乃大勢所趨

WpOh_rgznai100 ? 來源:lq ? 2019-09-07 07:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在技術(shù)的長河中,軟件、工具、系統(tǒng)等版本的迭代本是常事,但由于使用習(xí)慣、版本的兼容性、易用性等因素,很多用戶及開發(fā)者在使用或做開發(fā)的過程中,并不愿意及時同步更新,而這無疑為 IT 技術(shù)圈帶來了諸多碎片化問題,正如系統(tǒng)之 Android、Windows,也正如編程語言之 Python。近日,Python 因為其版本的碎片化問題遭到了英國國家網(wǎng)絡(luò)安全中心(NCSC)的點名,NCSC 警告開發(fā)者們必須考慮將 Python 2.x 的代碼庫移植到 Python 3.x 版本上,主要是因為自 2020 年 1 月 1 日起,Python 2.x 將走到其生命的盡頭,不再得到支持(EOL,End-of-life)。與此同時,NCSC 還將繼續(xù)使用 Python 2.x 的公司比作 EOL 以引誘另一個 WannaCry(病毒)或 Equifax(信息泄露)事件的發(fā)生。

Python 的應(yīng)用現(xiàn)狀

回望近些年才被 AI 點燃的 Python,其實并非是一門新的語言,它最早于 1989 年底由知名的荷蘭計算機程序員 Guido van Rossum 發(fā)明,后來作為一門面向?qū)ο?、直譯式計算機程序設(shè)計語言于 1991 年面世。其 30 年的發(fā)展歷程可謂比編程語言界的常青藤 Java 更為久遠。而論及 Java,一年兩次迭代的速度早已讓不少開發(fā)者痛苦不堪,其紛紛開啟對 Oracle 的吐槽模式,并直言“馬上推出 JDK 13 的你只管更新,不用顧及我們的感受,總之我們還堅守在 JDK 1.x”。事實上,不止 Java,Python 也有著相同的問題,很多人對 Python 舊版本的堅持反而也讓該語言的核心開發(fā)者們也備受煎熬,因為舊版本在安全性、功能上均無法與新版本相媲美,容易出現(xiàn)很多 Bug。根據(jù)著名 IDE 開發(fā)商 JetBrains 和 Python 基金會于今年年初發(fā)布的《Python Developers Survey 2018 Results》報告顯示,Python 3 的采用率正在快速增長,將其作為主要解釋器的開發(fā)者比例從 2017 年的 75% 上升到了 84%,不過與此同時,Python 2 仍占有 16% 的份額。

其中,在 Python 2.x 版本中,Python 2.7 最受歡迎且使用的人數(shù)最多,占比 93%。

那么這些開發(fā)者究竟為何不愿意升級?

Python 的版本之過

一直以來,語法簡單、擁有豐富和強大類庫的 Python 被稱之為一門膠水語言,它能夠很輕松的把用其它語言制作的各種模塊(尤其是 C/C++)輕松地聯(lián)結(jié)在一起。不過在版本的迭代過程中,Python 出現(xiàn)了一個經(jīng)常被開發(fā)者們詬病的問題,即于 2008 年發(fā)布的 Python 3 在設(shè)計時沒有考慮向較早版本相容的問題,Python 2.x 版本與 Python 3.x 之間并不兼容。這意味著如果你的軟件是基于 Python 2 開發(fā)的,想要遷移到 Python 3 上面,無疑需要耗費巨大的成本。而且在此過程中,如果項目涉及到諸多關(guān)于 Python 2 的類庫,可能還會導(dǎo)致遷移失敗。而自此問題的出現(xiàn)讓不少原本想要升級的開發(fā)者寧愿停留在以前的舊版本中,對此,有不少網(wǎng)友表示:

Python 2.x 和 Python 3.x 兩者在編碼效率上沒有明顯差距,但是 Python 3.x 卻要花額外的成本處理兼容性問題;

感覺 Python 2 和 Python 3 是兩門不同的語言,只不過他們的語法相似罷了;

。..。..

除此之外,根據(jù)來自 Python 社區(qū)開發(fā)和共享軟件的存儲中心 Python Package Index 統(tǒng)計顯示,當(dāng)前主流的 Python 軟件包中仍然有不少使用的是 Python 2.x 版本。且其中,每個包每個月的下載量高達百萬次。而想要將這些包移植到 Python 3 上,也絕非是一件易事。

Python 2.x 淘汰乃大勢所趨

誠然開發(fā)者有多少個不愿意,但 Python 2.x 淘汰已成必然趨勢。早在 2018 年 3 月,Python 之父 Guido van Rossum 就曾在郵件列表上宣布 Python 2.7 將于 2020 年 1 月 1 日終止支持,這意味著之后 Python 2 將不再被統(tǒng)一維護,與之對應(yīng)的是主流第三方庫也不會再提供針對 Python 2 版本的開發(fā)支持。不過,想要繼續(xù)使用舊版本也并非不可,就如同 Java 一樣,交付商業(yè)費用即可,但這樣的做法在日新月異的技術(shù)圈中,顯然不是長久之計。如今 NCSC 的警醒,再次告誡開發(fā)者們,“如果繼續(xù)使用不受支持的模塊,公司就會冒著組織和數(shù)據(jù)的安全性風(fēng)險,因為漏洞遲早會出現(xiàn),而且沒人會修復(fù)?!迸c此同時,來自 NCSC 的平臺安全研究員 Rich M 也于官方博客上列舉了不升級 Python 2 將面臨的種種問題:依賴項許多流行的項目,如 NumPy、Requests 和 TensorFlow 等承諾到 2020 年將停止支持 2.x,并且當(dāng)前一些項目已經(jīng)這么做了。這意味著如果你想使用你喜歡模塊的最新功能,那么就需要使用 Python 3。等待更新的時間越長,到時將更改的依賴項的 Python 3 版本會越多,更新起來會變得越困難?;?qū)⒆璧K其他開發(fā)者如果你正在維護其他開發(fā)者所依賴的庫,則可能會阻止他們更新到 Python 3。如果阻礙其他開發(fā)者,你會在間接、可能無意中加大其他項目面臨的安全風(fēng)險。你也許不在公司外部發(fā)布任何代碼,但要考慮可能也在內(nèi)部使用你代碼的同事。錯失最新的 Python 功能

表達式的收益——允許生成器將其部分操作委托給另一個生成器。

Unicode 字符串——Unicode 處理起來更容易。

打印函數(shù)——打印函數(shù)有額外的功能,使其更靈活。

視圖和迭代器取代列表——一些眾所周知的 API 不再返回列表。比如說,字典返回鍵、值或兩者的視圖。

“multi-with”語句——復(fù)雜的 with 語句更易于閱讀。

使用 * 和 ** 解包——擴展 * 可迭代解包運算符和 ** 字典解包運算符的用途?,F(xiàn)在可以在函數(shù)調(diào)用中使用任意數(shù)量的解包運算符。

純關(guān)鍵字實參——允許實參出現(xiàn)在 varargs 參數(shù)的后面。

F 字符串——運行時評估的一種新類型的字符串常量,可能含有任何有效的Python表達式。

大量的加速和優(yōu)化機制。

Python 2.x 如何遷移到 Python 3.x?

如今 Python 已經(jīng)被廣泛應(yīng)用于 Google、Facebook、Netflix 等實踐的生產(chǎn)環(huán)境中,也橫掃了各大編程語言排行榜,對此,更有人預(yù)估,其可能在未來幾年內(nèi)超越 C 和 Java,成為無可爭議的編程語言領(lǐng)導(dǎo)者。那么對于普通的開發(fā)者而言,又該如何丟棄 Python 2.x 版本,向 Python 3.x 版本移植?基于此,NCSC 給出了如下的一些程序、教程和書籍,希望對大家有所裨益:

Can I Use Python 3」(https://github.com/brettcannon/caniusepython3)是一個程序,它可以檢查你項目的依賴項,看看有沒有依賴項在阻止你使用 Python 3。使用該程序來查看你是否需要換掉任何使用 Python 2.x 的庫。在這種情況下,有必要訪問該庫主頁,看看是否有計劃移植到 Python 3。

「2to3」(https://docs.python.org/2/library/2to3.html)是一個 Python 程序,它試圖將 2.x 源代碼轉(zhuǎn)換成 Python 3。它通常與 Python 解釋器一起安裝為腳本。如果你只想看看它對源代碼進行的每次變更有何差異,則可以在不用編寫任何更改的情況下運行該程序。注意:這并不完美,你可能仍需要手動修復(fù)一些代碼。

《支持Python 3:深入指南》(http://python3porting.com/)是一本免費的開源電子書,可指導(dǎo)你完成添加 Python 3 支持的過程。本書解釋了你可能遇到的一些常見遷移問題,并列出了使用 Python 3中 的新功能改進源代碼的方法。

「Six 」(https://github.com/benjaminp/six)是一個 Python 2 和 3 兼容庫,為開發(fā)者提供了編寫與 Python 2 和 3 都兼容的代碼。使用該庫,開發(fā)人員可以選擇使用哪個版本的 Python 解釋器來運行代碼。如果你決定使用該庫,確保代碼表明了這一點:Python 版本號可能很快增加到 4.0(截至本文發(fā)稿時最新版本為 3.7.4)。

利用他人的經(jīng)驗來幫助你——很多人已講述了移植代碼庫方面的經(jīng)驗。Dropbox 在 2018 年將代碼庫遷移到 Python 3,撰寫了一篇博文詳細介紹了經(jīng)驗(https://blogs.dropbox.com/tech/2018/09/how-we-rolled-out-one-of-the-largest-python-3-migrations-ever/)。

Python 官網(wǎng)(https://docs.python.org/3/howto/pyporting.html)。

基于此,你會放棄 Python 2.x 嗎?

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 編程語言
    +關(guān)注

    關(guān)注

    10

    文章

    1965

    瀏覽量

    39893
  • python
    +關(guān)注

    關(guān)注

    58

    文章

    4889

    瀏覽量

    90330

原文標題:再見,Python 2.x

文章出處:【微信號:rgznai100,微信公眾號:rgznai100】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    充電寶新國標落地,工程師選 BLE 模組前要想清楚這三件事

    今年3月,GB47372—2026《移動電源安全技術(shù)規(guī)范》正式發(fā)布,2027年4月起全面實施。充電寶向用戶披露電池健康狀態(tài)已是大勢所趨。但Anker、華為、正浩等頭部品牌均采用BLE+App——這
    的頭像 發(fā)表于 04-21 12:01 ?298次閱讀
    充電寶新國標落地,工程師選 BLE 模組前要想清楚這三件事

    安信可PB-04 BLE 5.4模組在充電寶中的應(yīng)用選型

    今年3月,GB 47372—2026《移動電源安全技術(shù)規(guī)范》正式發(fā)布,2027年4月起全面實施。充電寶向用戶披露電池健康狀態(tài)已是大勢所趨。
    的頭像 發(fā)表于 04-14 17:04 ?940次閱讀

    [VirtualLab] 使用Python運行VirtualLab Fusion光學(xué)仿真

    摘要 VirtualLab Fusion允許Python外部訪問其建模技術(shù)、求解器和結(jié)果。這個用例介紹了一種使用路徑變量和Visual Studio代碼將Python連接到VirtualLab
    發(fā)表于 03-31 09:39

    大勢所趨!在江蘇,打造零碳園區(qū)已非“選擇題”而是“必答題”

    點擊藍字,關(guān)注我們 近年來,“雙碳”戰(zhàn)略持續(xù)推進,各地紛紛出臺零碳園區(qū)建設(shè)相關(guān)規(guī)劃與政策。江蘇省作為經(jīng)濟與能源消費大省,積極響應(yīng)國家號召,已將“零碳園區(qū)”列為能源轉(zhuǎn)型與綠色發(fā)展的重要抓手,明確要求園區(qū)提升可再生能源比例、強化能碳管理能力、推動源網(wǎng)荷儲一體化發(fā)展。在政策強力驅(qū)動下,園區(qū)零碳轉(zhuǎn)型已成為企業(yè)可持續(xù)發(fā)展的必然選擇。 為何要建零碳園區(qū)? 園區(qū)是我國產(chǎn)業(yè)集聚、能源消耗和碳排放的集中區(qū)域。據(jù)統(tǒng)計,截至
    的頭像 發(fā)表于 02-02 15:55 ?205次閱讀
    <b class='flag-5'>大勢所趨</b>!在江蘇,打造零碳園區(qū)已非“選擇題”而是“必答題”

    沒有專利的opencv-python 版本

    簡單,無兼容性報錯。 驗證:安裝后執(zhí)行 import cv2; print(cv2.__version__),輸出 4.8.x 或更高版本即成功。 二、需擴展功能(無專利):選擇「不含
    發(fā)表于 12-13 12:37

    揭秘施耐德電氣中壓開關(guān)背后的黑科技

    當(dāng)前,推進“雙碳”目標和建設(shè)新型電力系統(tǒng),已成為電力行業(yè)的大勢所趨。在這一宏大背景下,中壓開關(guān)如同守護電力系統(tǒng)安全的“隱形衛(wèi)士”,默默承載著電路通斷與故障隔離的核心使命。它的穩(wěn)定與精準直接
    的頭像 發(fā)表于 12-12 15:20 ?641次閱讀

    Amphenol Aerospace 2M Micro Miniature Python:創(chuàng)新的低輪廓 EMI/RFI 插頭與后殼組合

    Amphenol Aerospace 2M Micro Miniature Python:創(chuàng)新的低輪廓 EMI/RFI 插頭與后殼組合 作為一名電子工程師,在設(shè)計過程中,我們總是在尋找能夠優(yōu)化空間
    的頭像 發(fā)表于 12-12 09:15 ?422次閱讀

    Termux中調(diào)試圣誕樹Python代碼

    python --version 如果輸出Python 3.x.x(比如3.11.4),說明安裝成功。 二、代碼編寫(兩種方式可選) 方式1:用Termux自帶編輯器(nano)(新手推薦) 創(chuàng)建并編輯
    發(fā)表于 12-09 09:02

    暢享連接,PROFINET嵌入式模塊在稱重儀表中的重點應(yīng)用

    和稱重都是保證質(zhì)量和效率的關(guān)鍵。 隨著新項目實施中工業(yè)以太網(wǎng)技術(shù)的普及,稱重設(shè)備增加實時工業(yè)網(wǎng)絡(luò)化協(xié)議接口是大勢所趨。 客戶選擇的解決方案 傳統(tǒng)的稱重設(shè)備只是簡單的接口協(xié)議,如Modbus RTU等。為了提升客戶產(chǎn)品競爭力,穩(wěn)聯(lián)
    的頭像 發(fā)表于 11-04 16:45 ?651次閱讀
    暢享連接,PROFINET嵌入式模塊在稱重儀表中的重點應(yīng)用

    Momenta創(chuàng)新成果獲得央視重點關(guān)注

    目前,中國智能網(wǎng)聯(lián)汽車產(chǎn)業(yè)已經(jīng)在產(chǎn)業(yè)鏈多個環(huán)節(jié)和多個領(lǐng)域?qū)崿F(xiàn)技術(shù)創(chuàng)新。國家將持續(xù)鼓勵支持中外企業(yè)在這一領(lǐng)域深化合作,推動中國經(jīng)驗融入全球發(fā)展進程。未來,創(chuàng)新成果分享全球已成為大勢所趨
    的頭像 發(fā)表于 10-23 09:49 ?719次閱讀

    eSlM版iPhoneAir即將發(fā)售!智能終端的“無卡化” 浪潮已形成!eSIM已經(jīng)是大勢所趨!

    在蘋果引入eSIM手機商用后,華為、OPPO等手機廠商迅速宣布跟進,那么PDA手持終端會引入eSIM嗎?手機之后是PDA?eSIM技術(shù)在手持終端的滲透與國內(nèi)廠商布局當(dāng)蘋果力推eSIM手機商用,華為、OPPO等廠商迅速跟進,這場"無卡化"浪潮自然引發(fā)了對PDA手持終端的關(guān)注——這類廣泛應(yīng)用于物流、零售、工業(yè)場景的設(shè)備,會不會成為eSIM的下一個戰(zhàn)場?答案藏在政
    的頭像 發(fā)表于 10-21 14:36 ?867次閱讀
    eSlM版iPhoneAir即將發(fā)售!智能終端的“無卡化” 浪潮已形成!eSIM已經(jīng)是<b class='flag-5'>大勢所趨</b>!

    施耐德電氣如何助力生命科學(xué)與電子行業(yè)發(fā)展

    低碳轉(zhuǎn)型的大勢所趨下,先進制造業(yè)對于能源與運營效率的內(nèi)生需求逐漸上升為行業(yè)發(fā)展的核心命題;與此同時,出海全球市場的戰(zhàn)略方向也為企業(yè)帶來了突破增長邊界的全新可選項。
    的頭像 發(fā)表于 09-25 16:12 ?673次閱讀

    瑞之辰電源管理芯片與傳感器技術(shù)成就國產(chǎn)芯勢力

    全球半導(dǎo)體產(chǎn)業(yè)格局正經(jīng)歷深度調(diào)整,國產(chǎn)芯片崛起已是大勢所趨,一批中國芯企業(yè)正以硬核實力打破外資壟斷壁壘,逐步縮小與國際先進水平的差距。作為其中的堅實力量,瑞之辰扎根電源管理芯片、聚焦傳感器兩大核心
    的頭像 發(fā)表于 09-11 11:58 ?2663次閱讀
    瑞之辰電源管理芯片與傳感器技術(shù)成就國產(chǎn)芯勢力

    國產(chǎn)核心板:工控品質(zhì)+自主生態(tài),助力工業(yè)未來

    近年來,國家大力推進關(guān)鍵領(lǐng)域核心技術(shù)的自主可控,從“中國制造2025”到“新基建”戰(zhàn)略,工業(yè)控制系統(tǒng)的國產(chǎn)化替代已成為大勢所趨。尤其在能源、軌道交通、通信等關(guān)鍵行業(yè),安全可靠的國產(chǎn)工控設(shè)備需求激增。
    的頭像 發(fā)表于 07-14 14:23 ?572次閱讀

    智慧供熱-引領(lǐng)未來供熱新趨勢

    ,轉(zhuǎn)變粗放的運營管理模式。 智慧供熱是與我們國家倡導(dǎo)的綠色發(fā)展理念相一致的,是行業(yè)發(fā)展的大勢所趨! 傳統(tǒng)的熱力管網(wǎng)的管理及運行情況的掌控,只能依靠人工手抄和人工巡視的方式,工作量大、實時性差、準確度低,不利于現(xiàn)場及
    的頭像 發(fā)表于 06-03 14:11 ?813次閱讀
    智慧供熱-引領(lǐng)未來供熱新趨勢
    永寿县| 临泽县| 海兴县| 镇沅| 湖南省| 安徽省| 镇坪县| 江孜县| 绵阳市| 嘉善县| 唐海县| 天柱县| 七台河市| 威宁| 长乐市| 盖州市| 清镇市| 磐安县| 阳东县| 长治县| 平南县| 玛曲县| 聊城市| 嘉黎县| 东乌| 修武县| 湄潭县| 正安县| 威信县| 保德县| 雅江县| 盈江县| 永昌县| 万宁市| 东辽县| 兴城市| 弥渡县| 东明县| 定结县| 竹山县| 昌宁县|