天天看點

《Python地理資料處理》——第2章 Python基礎2.1 編寫和執行代碼

本節書摘來自異步社群《python地理資料處理》一書中的第2章,第2.1節,作者: 【美】chris garrard(加勒德) 更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。

本章内容

python解釋器的使用與腳本的編寫

python核心資料類型的使用

控制代碼的執行順序

可以用桌面gis軟體(如qgis)做許多事情,但是如果你長期和空間資料打交道,就會不可避免地想做一些桌面gis軟體辦不到的事。假如你知道如何程式設計,并且足夠聰明,就可以寫出準确表達自己需求的代碼。另一個常見的場景是需要自動化處理重複性的任務,進而代替一遍又一遍滑鼠單擊式的方法。編寫代碼和單擊式方法相比,不僅能帶來更多樂趣和智力上的刺激,當涉及到重複性的任務時,它也更有效。雖然你并不缺乏可以用于學習和工作的計算機語言,但因為python用于許多gis軟體包,包括qgis和arcgis,對于處理空間資料而言,python的确是一門優秀的語言。它也很強大,與此同時,它還是一門相對容易學習的語言,是以假如你剛開始學習程式設計,它會是一個很好的選擇。

使用python的另一個原因在于它是一門解釋性語言,是以用python編寫的程式可以運作在任何一台帶有解釋器的計算機上,解釋器存在于任何可能會使用到的作業系統上。運作一個python腳本,需要腳本和解釋器,它不同于運作.exe檔案,你隻需要一個檔案。但如果有一個.exe檔案,就隻能運作在windows作業系統下,如果想在mac或linux上運作它,就會令人很失望。然而,假如有一個python腳本,就可以在任何有解釋器的平台上運作自己的程式,是以不再局限于單一的作業系統。

解釋性語言的另一個優勢是可以互動地使用它們。對于嘗試和學習語言者來說,這很棒,因為輸入一行代碼,就可以立即看到結果。可以在終端視窗裡運作python解釋器,但使用idle可能會更容易,idle是python安裝完成後提供的一個簡單開發環境。idle中存在兩種不同類型的視窗,即shell視窗和編輯視窗。shell是互動式視窗,可以鍵入python代碼并立即獲得結果。如果看到>>>提示,就知道這是互動的視窗,如圖2.1所示。可以在提示符後鍵入代碼并按Enter鍵執行。本書中的許多例子都可以按照這種方式運作。對運作超過幾行的代碼而言,這種方式效率低下,而且它還不儲存代碼供以後使用。這時候,編輯視窗就能發揮作用。使用idle的檔案菜單按鈕打開新視窗,它将建立一個空檔案。可以在空檔案裡編寫代碼,在使用run菜單按鈕執行腳本之前,需要将檔案儲存為.py擴充名的檔案,腳本運作的結果将在互動視窗中顯示。關于輸出,在本書許多互動的例子中,我會鍵入變量名以檢視變量包含的内容,但如果你直接從腳本中運作代碼,就不會有輸出。取而代之,需要使用print指令顯式地告訴它将資訊發送到輸出視窗。

《Python地理資料處理》——第2章 Python基礎2.1 編寫和執行代碼

https://yqfile.alicdn.com/9a23604b51314ae407ede000632382ccd20535c7.png" >

如圖2.1所示,鍵入字元串'hello world!',輸出帶彩色的結果。文法高亮顯示非常有用,因為它可以幫助你一目了然地區分關鍵字、内置函數、字元串和錯誤消息。如果有些東西沒有按照你所期望的方式改變顔色,它還可以幫助你找到拼寫錯誤。idle另一個有用的地方是tab指令補全。如果你開始鍵入變量或函數名,然後按tab鍵,将彈出選項清單,如圖2.2所示。此時可以繼續鍵入,它會縮小搜尋範圍,你也可以使用箭頭鍵滾動清單。當你看到想要的詞被高亮顯示時,再按一次tab鍵,這個詞就會出現在螢幕上。因為python腳本是純文字檔案,如果你不想用,也可不使用idle。你可以在任何你喜歡的文本編輯器中編寫腳本。許多編輯器都很容易配置,是以你可以在不脫離編輯器的情況下直接運作python腳本。閱讀你最喜歡的編輯器文檔,學習如何做這件事。專門為python代碼而生的程式包有spyder、pycharm、wing ide和pyscripter。 每個人都有自己最喜歡的開發環境,而在找到自己喜歡的之前,你可能需要嘗試不同的開發環境。

《Python地理資料處理》——第2章 Python基礎2.1 編寫和執行代碼