您好,登錄后才能下訂單哦!
本篇內容主要講解“為什么Python正在慢慢失去魅力”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“為什么Python正在慢慢失去魅力”吧!
是什么使Python如此流行?
Python迅猛發展的主要推動力之一是它的易學性和強大的實用性,這使其對初學者以及因諸如C之類的語言的語法難以理解而回避編程的人非常有吸引力。 / C ++。
該語言從根本上廣泛強調代碼的可讀性。 憑借其簡潔明了的語法,它使開發人員無需編寫大量的行代碼即可表達想法和概念(在C或Java等低級語言中就是這種情況)。 Python非常簡單,可以與其他編程語言無縫集成(例如將CPU密集型任務卸載到C / C ++),這對多語言開發人員來說是一個額外的好處。
Python多功能性的另一個原因是企業(包括FAANG)以及無數小型企業對其的大量使用。 如今,您將找到一個Python軟件包,幾乎可以想到的所有內容-對于科學計算,您已經擁有Numpy,Sklearn(用于機器學習)和Caer(用于計算機視覺)。
Python的弱點
很慢,很慢
這可能很容易。 速度通常被認為是開發人員關注的重點之一,并且可能會持續不可預見的時間。
Python變慢的主要原因之一,實際上可以歸結為2 – Python被解釋為與編譯相反,最終導致執行時間變慢; 以及它是動態類型的(在執行過程中,Python會自動推斷變量的數據類型)。
實際上,這種" Python慢"的觀點在初學者中往往起很大作用。 對,是真的。 但只是部分。
以TensorFlow為例,這是Python提供的機器學習庫。 這些庫實際上是用C ++編寫的,并且可以在Python中使用,有點像是圍繞C ++實現的Python"包裝器"。 Numpy甚至在一定程度上也是如此。
它有一個GIL(l)
Python速度緩慢的主要原因之一是存在GIL(全局解釋器鎖定),該功能一次只能執行一個線程。 雖然這可以提高單線程的性能,但是它限制了并行性,在這種并行性中,開發人員必須實現多處理程序而不是多線程程序,以提高速度。
對于內存密集型任務不是很好的
當對象超出范圍時,Python會自動進行垃圾回收。 它旨在消除C和C ++涉及的很多內存管理復雜性。 由于指定數據類型的靈活性(或缺乏靈活性),Python消耗的內存量可能會迅速爆炸。
此外,Python可能不會注意到的一些錯誤可能會在運行時彈出,最終使開發過程變慢了很多。
移動計算的弱勢存在
從臺式機到智能手機的巨大轉變,很明顯,需要更強大的語言來構建用于手機的軟件。 盡管Python在臺式機和服務器平臺上具有相當大的代表性,但是由于缺乏強大的移動計算處理能力,Python往往會在移動開發方面失去優勢。
近年來,在這一領域取得了許多進步,但是這些新添加的庫甚至與強大的競爭對手(如Kotlin,Swift和Java)并不接近。
其他語言的興起
最近,Julia,Rust和Swift等較新的語言突然出現,它們借鑒了Python,C / C ++和Java的許多優秀設計概念-Rust幾乎保證了運行時的內存安全性和并發性,并提供一流的 與WebAssembly的互操作性; Swift對LLVM編譯器工具鏈的支持幾乎與C一樣快,而Julia為I / O密集型任務提供了異步I / O,并且速度非常快。
到此,相信大家對“為什么Python正在慢慢失去魅力”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。