首頁 > 網際網路

Spyder中如何匯入並使用arcpy

2019-12-18 06:29:41

相信不少地理工作者都會使用arcpy來批次處理一些檔案,同時也會使用anaconda做一些科學運算。但當使用arcpy時,只能使用ArcGIS自帶的IDE,非常不爽。想使用Spyder時,卻發現無法匯入arcpy。下面將會將剛折騰出來的spyder中使用arcpy教學分享給大家,解決這個困惑已久的問題。

(之前的最後一步,會導致新版本的anaconda下所有軟體無法開啟,在此做了一點更新。百度經驗排版不是很好,另外將經驗發布在了:https://blog.csdn.net/qq_27386899/article/details/84761665)

1

環境要求:spyder中的Python2.7為32位元。如果預設環境滿足,則直接進行最後一步(步奏5)。不滿足則按照如下步奏設定:

2

在anaconda中找到Anaconda Prompt,單擊右鍵,更多-->以管理員身份執行


3

更改環境為32位元輸入:set CONDA_FORCE_32BIT=1並回車(如果想改回64位元環境使用:set CONDA_FORCE_32BIT=,並回車)//檢視當前環境使用conda info

4

安裝python2.7:

conda create -n env_name python=2.7  

//注意:env_name為自定義的環境名稱,隨便命名,比如Python2、PythonArcpy等

安裝時會詢問是否顯示安裝過程,輸入y,然後按確認鍵確定 

安裝成功後,啟用新的python環境,並安裝適用於新環境的spyder:

activate env_name   //注意:env_name是剛才自己自定義的環境名稱

conda install spyder   //安裝新環境的spyder

(新的環境許多第三方包都沒有,如果需要,可以在anaconda navigator中安裝,或者執行conda install package  進行安裝   //package為所需要的包名比如pandas等)


5

將ArcGIS相關路徑加入到spyder中的Python路徑中

安裝成功後,開啟新的spyder(會有兩個spyder,以環境名為字尾的spyder才可以匯入arcpy)

每次在匯入arcpy之前,先執行下面的程式碼即可:

import sysarcpy_path = [r'C:Python27ArcGIS10.6Libsite-packages',              r'C:Program Files (x86)ArcGISDesktop10.6arcpy',              

         r'C:Program Files (x86)ArcGISDesktop10.6bin',              

         r'C:Program Files (x86)ArcGISDesktop10.6ArcToolboxScripts']

sys.path.extend(arcpy_path)

如果安裝路徑不同,需要選擇對應的路徑替換上述路徑。



6

問題解決:

在之前的教學中,我會建議將以上路徑直接新增到PYTHONPATH Manager中。但發現如果現在還這樣做,新的anaconda版本下,會導致anaconda的所有軟體都無法使用。所以現在不建議這樣做。

針對已經無法開啟的使用者,只需進行如下操作即可:

在桌面的此電腦上右鍵,選擇屬性(或者在控制面板中找到: 控制面板系統和安全系統),點選高階系統設定

在系統屬性中的高階選項中,點選環境變數,開啟環境變數介面,在環境變數中選中PYTHONPATH項,點選刪除後確定即可。重新啟動即可開啟。

重新開啟新建的spyder,將PYTHONPATH Manager中的路徑選中,點選下方的remove path。將所有的路徑刪除後,點選close關閉即可。




IT145.com E-mail:sddin#qq.com