Python幾乎是近幾年最火的一門計算機語言。借著機器學習,尤其是深度學習的興起,Python的發展搭上了快車。那么Python是學什么的?能做什么?如今深度學習領域最常用的兩大框架TensorFlow和PyTorch都是基于Python的,所以學會Python幾乎是所有做相關研究的人必備的技術。首先讓我們來看看Python的語言優勢膠水特性。
Python的膠水特性
Python相對于其他的語言優勢很多,但是我想說的是它的“膠水”特性。
我們都知道,每一種語言都有其特長,比如C語言的迅速,Java的“一處編譯,多處運行”,R語言廣泛的統計學的包和Julia的計算快速。但是同時每一門語言都為這個特長犧牲了其他的性能。
Python可以作為膠水讓你使用各個語言的特長,我們能在Python中使用C、Java、R和Julia,并且現在都已經有成熟的包讓我們方便地使用。這些都是Python大行其道的原因。
其實計算機語言中馬太效應是很明顯的,也就是強者越強,弱者越弱。
在前幾年做深度學習研究的人還在用Matlab,是因為之前的很多模型都是用Matlab寫的,并且Matlab可以很方便地做矩陣運算。
但是隨著近幾年Python的包越來越完善,加上Google和Facebook分別發力做出了兩個框架,Matlab終于壽終正寢,不再是人們研究的第一選擇。
其實Python在前幾年一直頂著一個“慢”的名頭,是因為它是個弱類型的語言,在運行的時候需要動態解釋。
這就相當于在運行的時候需要做很多的判斷,速度自然就慢下去了。也就是近幾年通過很多的優化,并且Python社區的發展,人們才慢慢地能夠忍受這種慢,前提還是很多底層代碼是用C來寫的。
所以,一門語言的大行其道并不一定是性能最優的。這就涉及到為什么Python被大家喜愛?
Python的突出特性在于它好上手
每一個C語言的初學者,如果想寫出一個界面的話是很難的,所以C語言程序的運行都是在一個黑框框里。但是Python可以很方便地寫出界面,雖然運行速度不一定快。
之前有人用200行代碼寫出了FlappyBird就是Python的優勢的體現。所以隨著代碼更新換代越來越快,而計算資源越來越多,人的操作的便捷性反而是最重要的。
如此一來,Python方才成為寵兒。
Python會不會被替代呢
當然,現在就有人暗戳戳地想用swift來替代它啊,但是語言的更新換代并不一定是一件壞事。雖然程序員需要重新去學習,但是學習成本肯定是越來越低的,而語言肯定是越來越先進的。
如果把計算機語言看成人與機器打交道的手段,我相信,這個手段會越來越有效,也越來越簡單。
以上就是關于Python是學什么的以及能做什么的全部內容,想了解更多關于Python的信息,請繼續關注中培偉業。