elipse+pydev+python开发arcgis脚本程序
?
環境配置參考:http://www.cnblogs.com/halfacre/archive/2012/07/22/2603848.html
添加arcpy類庫、arctoolbox、arcgis-bin如下所示。
windos——preference——pydev
?完成環境配置。
二、獲取文件路徑Python方法
?
os.getcwd()返回的是當前文件的目錄。假如我的代碼文件放在C:\Users\scfeng\workspace\arcgispython\src\root\tested包下
1 import os 2 print(os.getcwd())返回C:\Users\scfeng\workspace\arcgispython\src\root\tested文件路徑
print(os.path.dirname(os.getcwd()))Return the directory name of pathname path。即獲取腳本所在文件夾的上一層文件目錄C:\Users\scfeng\workspace\arcgispython\src\root
獲取root文本下文件夾date下面的text.txt文件路徑:
os.path.join(os.path.dirname(os.getcwd()),"date","text.txt")print返回:C:\Users\scfeng\workspace\arcgispython\src\root\date\text.txt
?環境可作為環境類中的讀/寫屬性進行訪問,方法為 arcpy.env.<環境名稱>。還可以利用 Python 的 from-import 語句簡化代碼,而不必為每個環境名稱都添加 arcpy.env 前綴。
import arcpy arcpy.env.workspace = "c:/data"簡化寫法
import arcpy from arcpy import env env.workspace = "c:/data"一種設置geodatabase作為存儲數據的工作空間環境,讀/寫 數據環境變量設置為如下:
import arcpy arcpy.env.overwriteOutput = True arcpy.env.workspace = os.path.join(os.path.dirname(os.getcwd()), "data", "Habitat_Analysis.gdb")roads = "MajorRoads"
veg = "Vegetation"
climate = "ClimateZones" import arcpy from arcpy import env # Set the workspace environment setting env.workspace = "c:/St_Johns/data.gdb" # Set the XYTolerance environment setting env.XYTolerance = 2.5
第二種設置文件夾為工作空間環境。
import arcpy #設置環境 arcpy.env.workspace="E:/test3" #buffer areas of roads roads="roads.shp" roadsBuffer = "E:/test3/buffer_ouput" arcpy.Buffer_analysis(roads,roadsBuffer,"40 Meters","","","ALL") print('finished')roads.shp放在test3文件夾目錄下,通過工作空間訪問路網數據。
第三種,也可以不設置工作空間,但是不建議這樣做,對于養成良好的代碼習慣不利。如
import arcpy #buffer areas of roads roads="E:/test3/roads.shp" roadsBuffer = "E:/test3/buffer_ouput" arcpy.Buffer_analysis(roads,roadsBuffer,"40 Meters","","","ALL") print('finished')?假如輸出的要素不想保留,則放在內存里,在后續的運行處理中自動清除。
buffer = arcpy.Buffer_analysis(roads, "in_memory/buffer", "1000 Feet", "", "", "ALL")默認輸出的路徑為工作空間里,如空間為gdb則輸出到gdb,如果輸出空間為文件夾,則輸出到文件夾。
habitat = arcpy.Select_analysis(dissolve, "Habitat", """ "Area" >100 AND "Climate" = 'Coastal' """)
?
?
三、查看運行時間
import datetime? #用來查看運行時間的命令與該程序無關
startTime=datetime.datetime.now()
print("start time:",startTime)
.........#寫你的程序
endTime=datetime.datetime.now()
print("end time:",endTime)
print("耗時",endTime-startTime)
?
轉載于:https://www.cnblogs.com/suncf/p/4116217.html
總結
以上是生活随笔為你收集整理的elipse+pydev+python开发arcgis脚本程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS中画矩形的几种方法总结
- 下一篇: HDU 3951 (博弈) Coin G