盡管很多編程語言都能夠實現“深度學習”等人工智能的各類型算法,但毫無疑問,Python是當前人工智能領域的第一語言。從事人工智能編程的人們有多麽喜歡Python呢?讀者可以看這樣一張有趣的照片(圖2-1)。
圖2-1
在開始學習具體內容之前,下麵首先對Python做一個簡單的介紹,以便讀者對Python建立整體的認識。Python的設計理念崇尚優美、清晰、簡單,這種理念正是它具有優秀的使用體驗和廣泛的使用群體的最直接原因。在學習和使用過程中,它呈現出來的特點可以概括為如下幾個方麵。
1.簡單
Python是一種奉行簡單主義思想的語言,簡單是它最大的優點之一。閱讀一段好的Python程序感覺就像是在讀英語,盡管這種“英語”的語法要求稍微嚴格了一些。也正是因為如此,Python被稱為可執行的偽代碼。
2.易學
Python語法簡潔明了,結構清晰。無論是已經熟悉其他編程語言的高手還是初次接觸編程的菜鳥,都非常容易學習。這樣的特點,使得人們在使用過程中不必過度關注程序設計語言的形式細節,從而可以將更多的注意力放在程序自身的邏輯和算法上。
3.免費且開源
Python是FLOSS(自由/開放源碼軟件)之一。FLOSS是一個基於社區概念建立的組織,推崇知識分享的概念。Python作為FLOSS成員軟件之一,可以自由地發布Python的拷貝、閱讀它的源代碼、對它進行修改、把它的一部分用於新的自由軟件。這也正是Python如此優秀的原因之一——它由一群希望看到更加優秀的Python的人創造並持續改進著。
4.解釋型語言
這是Python的運行機製。計算機通常不能直接接收和執行高級程序語言編寫的源程序,這些源程序一定要先通過翻譯程序翻譯成0-1序列的機器語言,才能被計算機的CPU或者GPU執行。這種翻譯有編譯和解釋兩種方式。編譯是指源代碼先由編譯器編譯成可執行的機器代碼,然後執行;解釋是指源代碼程序被解釋器直接執行。這兩種方式各有優缺點。例如,經典的C語言就是采用編譯執行的方式,而Python這種解釋型語言的方便之處在於,它可以通過在不同係統上安裝解釋器,使得使用Python編寫的程序可以直接在這些係統上運行而無須進行修改。