1. 程式人生 > >Python學習之路(1)

Python學習之路(1)

Python學習之路(1)

1. Python語言概述

  Python是一種計算機程式設計語言。是一種動態的、面向物件的指令碼語言,語言預設字尾為.py。經過多年發展,已經在系統程式設計網路爬蟲人工智慧科學計算系統運維WEB開發等多個領域廣泛應用。在網路爬蟲方面,Python的常用框架有grabscrapypyspider等多種網路爬蟲框架和爬蟲系統,在人工智慧方面有TensorFlowPyTorch等多種開發框架,在科學計算方面有諸如NumpyMatplotlibpandas等多項典型資料庫。在多個應用領域,Python不免與其他語言有所重疊,在整體程式碼執行效率上,可能不及C/C++

Java 等語言,但是在語言入門難度上,Python要比其他語言要友好很多,而且隨著現在硬體更新換代,除非對程式碼執行非常苛刻的領域,在大眾應用領域,程式碼執行效率已相差不大。Python也被成為“膠水語言”(glue language),Python提供了豐富的—API和工具,因此編寫程式時可以輕鬆使用C/C++等語言來編寫擴充模組,同時Python編譯器本身也可以被整合到其他需要指令碼語言的程式內。

  Python經過發展,現在已經更新到3.7.1版本,需要注意的是,在Python2.x和Python3.x語言已經存在很大差別,而且Python2.7將於2020年1月1日終止支援。

2. Python使用注意事項

  Python是解釋類語言,而諸如C/C++ 等為編譯類語言,這也是Python程式碼執行效率低的本質原因。基於上述考慮,Python在書寫規則上對程式碼的整潔,特別是縮排規則上要求就較為嚴格:

if age < 21:  
    print("這句話在if語句內執行,可看做是if的子語言")
print("這句話與if語句平級")

3. Python學習工具

  語言學習,選擇一個好的文字編輯器和IDE對今後學習是比較有幫助的。

  • 文字編輯器

    Windows自帶有notepad(記事本),開啟速度很快,但是對程式碼高亮和函式支援很差,因此不建議使用,當下比較實用的有notepad++

    sublimevscodeatom 等。

    • notepad++體積小巧,能夠支援多種語言,而且開啟速度較快,支援中文,不過外掛較少。

      Notepad++

    • sublime介面美觀,多種語言支援,而且開啟速度很快,比notepad++要強大,有2.0和3.0版本,其中2.0免費,3.0付費,但是根據使用體驗,3.0其實偶爾提醒你購買,大家可以網上尋找破解,不過還是建議大家支援正版;另外sublime是個人開發,開發速度比較慢,而且對中文支援不是很友好。

      Sublime Text

    • vscode和atom分別是微軟和GitHub社群開發,背後都具有龐大的開發群體,因此軟體更新速度和外掛的豐富度都較前兩者要好很多,本人現在正在使用vscode,背靠微軟大山,因此文字編輯器具有較濃的微軟扁平化的風格,另外vscode可以當做一個小型的IDE,自己假如安裝有Python,通過定義Python檔案的位置,可以直接在編輯器內進行編譯,很方便,不過當外掛安裝較多時,編輯器開啟速度比較慢;atom依據GitHub,個人暫時沒有使用過,據網上說,atom比較佔記憶體,因此配置較低不建議使用。

      VScode Atom

  • IDE

    當下較為註明的IDE眾多,本人使用的是pycharm相對來說比較小巧,和Java開發IDE中的IntelJ 是一家產品,而且pycharm對Python支援較好,在當下Python的開發者中比較流行。需要注意,該IDE都是商業版軟體,收費,網上也可以找到破解,不過還是鼓勵大家支援正版。

  • 個人學習路線

    個人喜好不同,可能會選擇不同的學習方法,此處介紹下我的學習路程,本人學習同時依靠書籍和視訊,書籍比較慢,但是比較系統,而且練習題較多,視訊速度快(此處指的是培訓視訊),但是知識點較碎,不利於知識系統的整體性把握,因此我是先大致過一遍書籍,然後在進一步觀看視訊,書籍內容基礎系統,因此理解難度不大,視訊內容難度係數較高,可以在對整體知識有個大致把握之後在進行拔高。無論是書籍還是視訊,內容相差不大,因此不必過多取查詢。

    我使用的書籍是《Python程式設計:從入門到實踐》,網上就可以找到,個人覺得講的很基礎,而且很系統;培訓視訊大家網上查詢,一般也都能在網上找到。

    總之,無論差異性多大,最終都應迴歸到學習->練習->總結->學習的迴圈中。