<abbr id="ciwa6"><option id="ciwa6"></option></abbr>
  • <sup id="ciwa6"><kbd id="ciwa6"></kbd></sup>
    <small id="ciwa6"></small>
  • 千鋒教育-做有情懷、有良心、有品質的IT職業教育機構

    你所在的位置:首頁 > 常見問題

    Python是什么?

    時間:2017-12-04 14:42:35 來源:千鋒教育  作者:千鋒

       Python是一種編程語言,它的名字來源于一個喜劇。也許初設計Python這種語言的人并沒有想到今天Python會在工業和科研上獲得如此廣泛的使用。的自由軟件作者Eric Raymond在他的文章《如何成為一名黑客》中,將Python列為黑客應當學習的四種編程語言之一,并建議人們從Python開始學習編程。這的確是一個中肯的建議,對于那些從來沒有學習過編程或者并非計算機專業的編程學習者而言,Python是好的選擇之一。Python次學習Python,我只用了不到二十分鐘的時間,站在書店里把一本教初學編程的人學習Python的書翻了一遍。也是從那時起,我開始被這種神奇的語言吸引。

      Python可以用來開發Symbian上的東西。

      易用與速度的結合Python是一種用起來很方便的語言,很多初學Java的人都會被Java的CLASSPATH搞得暈頭轉向,花上半天的時間才搞明白原來是CLASSPATH搞錯了自己的Hello World才沒法運行。用Python就不會有這種問題,只要裝上就能直接用。

      Python是一種腳本語言,寫好了就可以直接運行,省去了編譯鏈接的麻煩,對于需要多動手實踐的初學者而言,也就是少了出錯的機會。而且Python還有一種交互的方式,如果是一段簡單的小程序,連編輯器都可以省了,直接敲進去就能運行。Python是一種清晰的語言,用縮進來表示程序的嵌套關系可謂是一種創舉,把過去軟性的編程風格升級為硬性的語法規定。再不需要在不同的風格間選擇、再不需要為不同的風格爭執。與Perl不同,Python中沒有各種隱晦的縮寫,不需要去強記各種奇怪的符號的含義。Python寫的程序很容易懂,這是不少人的共識。Python是一種面向對象的語言,但它的面向對象卻不象C++那樣強調概念,而是注重實用。不是為了體現對概念的完整支持而把語言搞得很復雜,而是用簡單的方法讓編程者能夠享受到面向對象帶來的好處,這正是Python能像Java、C#那樣吸引眾多支持者的原因之一。

      Python是一種功能豐富的語言,它擁有一個強大的基本類庫和數量眾多的第三方擴展,使得Python程序員無需去羨慕Java的JDK。Python為程序員提供了豐富的基本功能使得人們寫程序時用不著一切底層做起。說到這里,人們通常會用一種擔心:腳本語言通常很慢。腳本語言從運行的速度講的確會慢一些,但Python的速度卻比人們想象得快很多。雖然Python是一種腳本語言,但實際上也可以對它進行編譯,就象編譯Java程序一樣將Python程序編譯為一種特殊的ByteCode,在程序運行時,執行的是ByteCode,省去了對程序文本的分析解釋,速度自然提升很多。在用Java編程是,人們崇尚一種Pure Java的方式,除了虛擬機一切東西都用Java編寫,無論是基本的數據結構還是圖形界面,而Pure Java的SWING,卻成為無數Java應用開發者的噩夢。Python崇尚的是實用,它的整體環境是用C來編寫的,很多基本的功能和擴展的模塊都是用C/C++來編寫的,當執行這一部分代碼時,它的速度就是C的速度。用Python編寫的普通桌面程序,其啟動運行速度與用C寫的程序差別不大。除了這些,通過一些第三方軟件包,用Python編寫的源代碼還可以以類似JIT的方式運行,而這可以大大提高Python代碼的運行速度,針對不同類型的代碼,會有2倍至100倍不等的速度提升。

      Python是我見到過的語言中,在易用性和速度上結合的的一個,通過喪失一點點經常可以忽略不計的運行速度從而獲得高的編程效率,這就是我選擇Python的原因。把精力放在要解決的問題上選擇一種合適的語言,才能讓你把有限的精力放到需要解決的問題上。不同的語言有不同的作用,C和匯編適合編寫系統軟件,如果用它們來編寫企業應用,恐怕沒幾個人能得心應手。我以前就碰到一個用匯編寫數據庫程序的哥,雖然基本的功能完成了,但要增加個報表預覽什么的,他就沒法應付了。聰明的程序員是用合適的工具去完成任務,想找一把萬能鑰匙是不太可能的。Python的自動的垃圾回收機制是的編程語言的一種基本特性,用擁有這一功能的語言編程,程序員們通常不用去關心內存泄漏的問題,而當我們用C/C++寫程序時,這卻是重要的需要認真考慮卻又很容易出錯的問題之一。數據結構是程序構成的重要部分,鏈表、樹、圖這些在用C編程時需要仔細表達的問題在Python中簡單了很多。在Python中,基本的數據結構就是數組、序列和哈希表,用它們想要表達各種常見的數據結構是非常容易的。沒了定義指針、分配內存的任務,編程變得有趣了。CORBA是一種的軟件體系結構,它是語言無關平臺無關的。C++、Java等語言都有CORBA綁定,但與它們相比,Python的CORBA綁定卻容易很多,因為在程序員看來,一個CORBA的類和Python的類用起來以及實現起來并沒有什么差別。沒了復雜體系結構的困擾,用Python編寫CORBA程序也變得容易了。好鋼要用在刀刃上,要想用有限的時間完成盡量多的任務,就要把各種無關的問題拋棄,而Python恰恰提供了這種方法。跨平臺又易擴展隨著Linux的不斷成熟,越來越多的人轉到Linux平臺上工作,軟件的開發者自然就希望自己編寫的軟件可以在所有平臺下運行。Java一次編寫處處運行的口號使它成為跨平臺的開發工具的典范,但其運行速度卻不被人們看好。實際上,幾乎所有的腳本語言都是跨平臺的,Python也不例外。Python不僅支持各種Linux/Unix系統,還支持Windows,甚至在Palm上都可以運行Python的程序。一個程序想要跨平臺工作,不僅僅需要語言本身能夠做到在平臺之間兼容,在圖形化界面的時代,還需要有能跨平臺工作的Widget。Python不僅支持老一些的TK,還支持新的GTK+、QT以及wxWidget,而這些Widgets都可以在多個平臺上工作。通過它們,程序員就可以編寫出漂亮的跨平臺GUI程序。Python通常是運行在native代碼與腳本代碼之間,程序員可以用C/C++為Python編寫各種各樣的模塊,這不僅可以讓程序員以Python的方式使用系統的各種服務及用C/C++編寫的函數庫和類庫,還可以大幅度提高Python程序的速度。用C/C++編寫Python的模塊并不復雜,而且為了簡化這一工作,人們還制作了不少工具用來協助這一工作。正是因為如此,現在各種常用的函數庫和類庫都有Python語言的綁定,用Python可以做到的事情越來越多了。萬能鑰匙?Python功能強大,但它卻不是萬能的。如果你要編寫操作系統或驅動程序,很顯然,Python是做不到的。要寫軟件,沒有哪個工具是萬能的,現在之所以有那么多的編程語言,就是因為不同的語言適合做不同的事情。因此,選擇適合自己的語言工具是重要的。

    熱帖推薦

    • 成都地址:成都市武侯區科華北路62號力寶大廈N(北樓)18樓
      面授課程:iOS課程培訓、Android課程培訓、HTML5課程培訓、UI課程培訓
    • 北京天豐利校區:北京市海淀區寶盛北里西區28號天豐利商城4層
      北京沙河校區:北京市昌平區沙陽路18號北京科技職業技術廣場服務樓2層、南區服務樓2層
      咨詢電話:400-654-7778 010-82790226-801
      面授課程:iOS培訓、Android培訓、HTML5培訓、UI培訓、PHP培訓、JavaEE培訓、好程序員
    • 深圳科技園校區:深圳市南山區科苑南路高新技術產業園R3-B棟5層
      深圳大學城校區:深圳市南山區留仙大道1201號大學城創客小鎮16棟2樓、3樓
      深圳西部硅谷校區:深圳市寶安區寶安大道5010號西部硅谷B座A605-619
      咨詢電話:0755-86681178/9-801
      面授課程:iOS培訓、Android培訓、HTML5培訓、UI培訓、PHP培訓、JavaEE培訓、好程序員
    • 上海地址:上海市寶山區同濟支路199號智慧七立方3號樓2-4層
      咨詢電話:400-627-7899 021-65025129-602
      面授課程:iOS課程培訓、Android課程培訓、HTML5課程培訓、好程序員
    • 鄭州地址:鄭州市金水區緯五路21號河南教育綜合樓(經緯中學樓)6/7/8層
      咨詢電話:0371-55911950 400-654-7778
      面授課程:iOS課程培訓、Android課程培訓、HTML5課程培訓、UI課程培訓
    • 廣州地址:廣州市天河區元崗路310號智匯park創意園E座5層
      咨詢電話:020-22119207 400-654-7778
      面授課程:iOS課程培訓、Android課程培訓、HTML5課程培訓
    • 大連地址:大連市甘井子區軟件園路2號B8座二樓
      咨詢電話:0411-39026086 400-654-7778
      面授課程:iOS課程培訓、Android課程培訓、HTML5課程培訓
    • 武漢地址:武漢市東新區光谷大道77號金融港B26棟9樓
      咨詢電話:027-59905909 027-59905908 027-59905902
      面授課程:iOS課程培訓、Android課程培訓、HTML5課程培訓
    • 西安南二環校區:西安市二環南路西段60號永安大廈4層
      西安科技園校區:西安市雁塔區高新六路52號立人科技園C座西區4層
      咨詢電話:029-85260160 029-85261030 029-85260960
      面授課程:iOS課程培訓、Android課程培訓、HTML5課程培訓
    • 杭州地址:浙江省杭州市江干區九堡旺田書畫城A座4層
      咨詢電話:0571-86893632 010-82790226-801
      面授課程:iOS課程培訓、Android課程培訓
    • 青島校區地址:青島市市南區金壇路17號青島職業技術南校區實訓樓A4層
      咨詢電話:0532-80910752/3 010-82790226-801
      面授課程:iOS課程培訓、Android課程培訓
    • 掃碼匿名提建議
      直達CEO信箱