环境配置参考: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包下

 import os
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)

elipse+pydev+python开发arcgis脚本程序的更多相关文章

  1. 老李分享:Python开发性能测试脚本

    老李分享:Python开发性能测试脚本   测试开发工程师的工作主要是根据测试目标来完成,帮助测试人员完成测试目标,测试的业务需求是测试人员提出,但是由于环境的制约,手中没有性能测试工具的时候,性能测 ...

  2. 用python开发简单ftp程序

    根据alex老师视频开发的简单ftp程序,只能实现简单的get功能 ftp客户端程序: #!/usr/bin/env python #_*_ coding:utf-8 _*_ import socke ...

  3. 使用Python开发鸿蒙设备程序(0-初体验)

    到目前为止,鸿蒙设备开发的"官方指定语言"还是C语言! 这看起来是一件正常的事,毕竟鸿蒙设备开发还是属于嵌入式开发的范畴,而在嵌入式开发中C语言又是当之无愧的首选,所以,大家也都接 ...

  4. 2020年python开发微信小程序,公众号,手机购物商城APP

    2020年最新的技术全栈,手机短信注册登陆等运用, 精准定位用户 支付宝支付 以及前后端从0到大神的全部精解 2020年最新的技术全栈,手机短信注册登陆等运用, 精准定位用户 支付宝支付 以及前后端从 ...

  5. 用Python开发实用程序 – 计算器

    一段时间前,自己制作了一个库 “sui-math”.这其实是math的翻版.做完后,python既然可以轻易的完成任何的数学计算,何不用python开发一个小程序专门用以计算呢? 现在我们越来越依赖于 ...

  6. 配置Sublime Text 3的Python开发环境

    最近的项目是用Python开发自动化测试脚本的,所以使用Python比较多.我用的编辑器是Sublime Text3. Sublime Text 3是一个轻量级的跨平台文字编辑器,一经面世便被认为是一 ...

  7. 用python开发android应用 【转载】

    用python开发android应用 [转载] 转载自:http://www.miui.com/thread-995114-1-1.html Python是动态语言,比较简洁.Android不直接支持 ...

  8. python如何编写win程序

    python可以编写win程序.win程序的格式是exe,下面我们就来看一下使用python编写exe程序的方法. 编写好python程序后py2exe模块即可将其打包为exe程序. 实际操作过程: ...

  9. arcpy+PyQt+py2exe快速开发桌面端ArcGIS应用程序

    前段时间有一个项目,大体是要做一个GIS数据处理工具. 一般的方法是基于ArcObjects来进行开发,因为我对ArcObjects不太熟悉,所以就思考有没有其他简单快速的方法来做. 在查看ArcGI ...

随机推荐

  1. Oracle基础(六) 数据类型

    一.Oracle中的数据类型 Oracle中提供了丰富的数据类型,用来存储数据,主要包括: 1.字符类型:主要用来存储字符串类型的数据. 数据类型 长度 说明 CHAR(n BYTE/CHAR) 默认 ...

  2. Spring Data:企业级Java的现代数据访问技术(影印版)

    <Spring Data:企业级Java的现代数据访问技术(影印版)>基本信息原书名:Spring Data:Modern Data Access for Enterprise Java作 ...

  3. js 当前日期处理 获取

    var myDate = new Date();myDate.getYear();        //获取当前年份(2位)myDate.getFullYear();    //获取完整的年份(4位,1 ...

  4. cxGrid使用汇总2

    17. 怎样设计多表头的cxGrid? 解决:cxGrid可以解决如下的表头: --------------------------------- | 说明1 | 说明2 | ------------ ...

  5. 转: android app进程保活的文章列表

    1. Android 后台任务型App多进程架构演化 http://www.jianshu.com/p/4ac1f373e8cd 2. 关于 Android 进程保活,你所需要知道的一切 http:/ ...

  6. Session,Cookie,jsessionid,Url重写

    在一些投票之类的场合,我们往往因为公平的原则要求每人只能投一票,在一些WEB开发中也有类似的情况,这时候我们通常会使用COOKIE来实现,例如如下的代码: < % cookie[]cookies ...

  7. javascript事件代理(委托)

    之前有接触过事件代理,但是印象并不深刻.这次记下来加强印象. 用个大家比较常见的代码举例子: html dom结构: <ul id="ul1"> <li>0 ...

  8. Javascript addEventListener dispatchEvent

    测试代码:分别在嵌套的元素body,div#level1,div#level2,div#level3上附加事件,仅在chrome中测试通过. <!DOCTYPE html> <htm ...

  9. MyElcipse之问题小结

    运行MyEclipse时,遇到这一错误提示: An internal error occurred during: "Launching chat on MyEclipse Tomcat & ...

  10. 20141124-JS 变量,数据类型

    变量: 变量是JS中存储信息的容器,必须以字母开头. 格式: 定义变量只能用 var 定义,用 = 赋值. <script> var x=2; </script> 字符串型的值 ...