环境配置参考: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脚本程序相关推荐

  1. 为什么用Python开发桌面应用程序

    为什么用Python开发桌面应用程序 为什么用Python开发桌面应用程序 1)wxWidgets是一个比MFC优雅的库,TortoiseCVS用wxWidges而不用MFC,就是因为wxWidget ...

  2. pythonarcgis插件_【直播】基于Python开发ArcGIS插件:Python Add-in丨城市数据派

    原标题:[直播]基于Python开发ArcGIS插件:Python Add-in丨城市数据派 Add-in是什么? Add-in(加载项)是一种自定义项(例如工具栏上的工具集合),Add-in可以插入 ...

  3. python写安卓游戏_python写lol游戏脚本(用python开发安卓脚本)

    python写lol游戏脚本 俾格米人和搅拌机的引擎. python-ogre和panda3d是用c/c编写的,但只提供了一个python接口. 你好,蟒蛇可以在Android上工作. 因为你可以在A ...

  4. python开发windows桌面程序,python开发windows桌面应用

    为什么用Python开发桌面应用程序 1)wxWidgets是一个比MFC优雅的库,TortoiseCVS用wxWidges而不用MFC,就是因为wxWidgets好用,而不是为了可以移植. 2)Py ...

  5. python开发微信小程序-Python 开发者的微信小程序开发实践

    导读 在知乎上,有人提问"如何使用 Python 开发微信小程序". 其实微信小程序作为一个前端的机制,Python 并不能插上边.只不过可以作为后端接口为微信小程序提供数据服务而 ...

  6. 使用python开发windows应用程序

    本人以前一直用的是C++,MFC,毕业到了公司以后,公司用python做流程,我顺便最近研究了一下用python开发windows应用程序的整个流程,大体如下: 一.开发前期准备 1.boa-cons ...

  7. 使用Python开发windows桌面程序

    使用Python开发windows桌面程序 一.开发前期准备 1. boa-constructor-0.6.1.bin.setup.exe #一个wxWidges的集成开发环境,简单如Delphi,可 ...

  8. 免费直播!用Python开发人脸识别程序,零基础也能学(附源码)

    在当今社会人脸识别技术应用的范围越来越广泛,全球很多商业活动都已经从中获益:人脸自动对焦和笑脸快门技术,人脸识别门禁,人脸识别支付等许多方面. 人脸识别技术的使用在接下来的几年内还会继续增长,还没掌握 ...

  9. python编写arcgis脚本教程_ArcGIS二次开发(1)arcpy简介及编写一个自己的脚本

    1.1.前言 在数据处理过程中,一般需要做一些数据的整理,如图层合并.裁剪等工作.虽然在ArcMap中也有提供对应的工具(批量处理.建模等),但对于多个步骤之前的衔接及其它特殊处理存在困难,本系列文章 ...

最新文章

  1. 在git上push代码时缺少Change-Id
  2. java的System.getProperty()方法可以获取的值
  3. object byte java_Object转byte[];byte[]转Object
  4. python接口自动化发送get请求 详解(一)
  5. python插入数据查询不出结果问题
  6. php 查询出来的字段名全是小写或者大写
  7. Tomcat(一):基础配置详解
  8. Android Studio 写个单元测试用例,就是这么方便
  9. CF 346 B vectorpair s[100]
  10. 计算机键盘中英文,苹果电脑键盘上的【⌘】键用英文怎么表达?和露营地又有什么关系...
  11. smartUp手势插件Chrome
  12. Invalid bound statement (not found): com.example.wyl.mapper.PeijianDAO.selectList异常错误
  13. 王兴:为什么中国的To B企业都活得这么惨?(演讲全文)
  14. hdu 3786 找出直系亲属 (DFS)
  15. 想进BAT等大厂,到底要怎么做?
  16. ASO优化常见的问题精选之ASO指数是什么?
  17. 360 || 2021校园招聘的一道笔试题思路分享
  18. onvif协议远程调节ip摄像机码流信息
  19. 本科计算机辅导,计算机及应用自考本科辅导
  20. navicat for mysql 导出向导_详解 Navicat 导出向导步骤

热门文章

  1. coffeescript html5,HTML5——前端预处理技术(Less、Sass、CoffeeScript)
  2. php递归 返回数组,php 递归 无限级分类并返回数组的例子
  3. 网鼎杯2020php反序列化,2020-网鼎杯(青龙组)_Web题目 AreUserialz Writeup
  4. 输入两个数、用python求他们的和_从键盘上输入俩个实型数,编程求它们的和差积商,要求输出时,保留两位小数C语言编程题:从键盘上输入两个...
  5. ENSP配置 实例四 默认路由配置
  6. java 多态判断非空_Java核心技术(四):继承
  7. 培训学校计算机助教是干嘛的,【助教】的意思是什么?【助教】是什么意思?...
  8. vue 浏览器调试 样式如何定位样式_浏览器断点调试-程序员的必修课
  9. linux看网络电影,Linux中看电影、听音乐
  10. 怎样发量暴增_发量少怎么增加发量 秃发女孩必学发量激増6招