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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/575049.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python py2exe_转:py2exe 生成 python 可执行文件

#mysetup.py from distutils.core import setup import py2exe setup(console["helloworld.py"]) 然后按下面的方法运行mysetup.py: python mysetup.py py2exe 上面的命令执行后将产生一个名为dist的子目录&#xff0c;其中包含了helloworld.exe,python24.dll,librar…

BZOJ3427 Poi2013 Bytecomputer

可以YY一下嘛 最后一定是-1, -1, ..., -1, 0, 0, ... 0, 1, 1, ..., 1的一个数列 于是f[i][j]表示到了第i个数&#xff0c;新数列的第j项为-1 or 0 or 1的的最小代价 然后就没有然后了 1 /**************************************************************2 Problem: 3427…

mysql timdir_MYSQL学习笔记——数据类型

mysql的数据类型可以分为三大类&#xff0c;分别是数值数据类型、字符串数据类型以及日期时间数据类型。数值数据类型数值类型又可以分为整型、浮点类型、Decimal。整型mysql的整型可以分为TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT&#xff0c;下表给出了每个类型的存储空间…

python编写网页游戏脚本_[大数据]用Python脚本做一些网页游戏中力所能及的自动化任务 - 码姐姐找文...

下面是一段自动登录360传奇霸业游戏的脚本&#xff1a; from pymouse importPyMouseimporttimeimportwebbrowserfrom pykeyboard importPyKeyboard url "http://cqby.wan.360.cn/game_login.php?server_idS577&&srcloginhistory"webbrowser.open_new_tab(ur…

mysql 子查询模糊匹配_sql中的查询(模糊查询,子查询,联表查询)

1、查出每个部门不等于经理的工资select from emp where sal <>all(select min (sal) from emp where jobmanager group by deptno)2select * from emp where sal3select * from emp where sal>all(select min(sal) from emp where jobmanager group by deptno);联表查…

Oracle碎碎念~2

1. 如何查看表的列名及类型 SQL> select column_name,data_type,data_length from all_tab_columns where ownerSCOTT and table_nameEMP;COLUMN_NAME DATA_TYPE DATA_LENGTH --------------- ---------- ----------- EMPNO NUMBER 22 ENAME …

flutter怎么添加ios网络权限_使用Flutter控制蓝牙通讯

背景知识视频教程Dart和Flutter&#xff1a;完整的开发人员指南 - 国外课栈​viadean.comFlutter使用Firestore构建复杂的Android和ios应用 - 国外课栈​viadean.comFlutter的实际项目 - 国外课栈​viadean.com您想使用蓝牙玩物联网设备&#xff0c;但不能在其中放置任何软件吗…

mysql查看服务器版本sql_警告:您的SQL语法有错误;请查看与MySQL服务器版本对应的手册,以了解使用n的正确语法...

我正在将解析器xml编码到mysql错误全名&#xff1a;1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near CHA3871376-ABZ-1, \xd0\x91\xd1\x80\xd0\xbe\xd0\xbd\xd0\xb7\xd0…

【leetcode】Max Points on a Line

Max Points on a Line 题目描述&#xff1a; Given n points on a 2D plane, find the maximum number of points that lie on the same straight line. 解题思路&#xff1a; 1.首先由这么一个O(n^3)的方法&#xff0c;也就是算出每条线的方程&#xff08;n^2&#xff09;&…

python网页结构分析_Python爬虫基础之网页组成解析

当我们用浏览器访问网站时&#xff0c;每个网页的大不相同&#xff0c;你是否想过它为什么会呈现多种不同的样式呢&#xff1f;就让我们一起了解一下网页的基本组成、结构和节点等内容吧&#xff01;网页的组成 网页可以分为三大部分——HTML、CSS和JavaScript。如果把网页比作…

完全开源im框架_【行业资讯】移动端开源 IM 框架 MobileIMSDK v5.0 发布!

一、更新内容简介本次更新为主要版本更新&#xff0c;强势升级&#xff0c;可同时支持TCP、UDP两种协议&#xff0c;精心封装之下&#xff0c;实现一套API、两种协议同时并存。可能是市面上唯一同时支持UDPTCP两种协议的同类IM框架。二、MobileIMSDK简介MobileIMSDK是一套专为移…

linux的NetworkManager服务(转)

在开启NetworkManager服务的情况下&#xff0c;在终端下敲“service network restart”命令&#xff1a; 正在关闭接口 eth0&#xff1a; 设备状态&#xff1a;3 (断开连接) [确定] 正在关闭接口 eth1&#xff1a; 错误&#xff1a;断开设备 eth1&#xff08;/org/freedesktop…

python使用函数目的_Python函数的概念和使用

Python Python开发 Python语言 Python函数的概念和使用函数 为了便于程序的维护和更好的实现模块化&#xff0c;好的程序都会分解为很多函数。 可以这么说&#xff0c;对于任何的编程语言&#xff0c;函数都是一个非常重要的概念。 python 不仅简化了函数的定义过程&#xff0c…

VirtualBox全屏切换

用VirtualBox的时候&#xff0c;如果设置为全屏&#xff0c;想再切换回来&#xff0c;没有什么菜单&#xff0c;只有通过键盘的快捷键来操作&#xff0c;才可以恢复。 我常常忘掉&#xff0c;所以老是得去找&#xff0c;以后需要记住这几个按键的快捷键。 1.全屏与非全屏切换&a…

python董付国教程_董付国老师python教学——学习笔记(一)

python的对象模型&#xff1a;数字(int float complex)&#xff1a;数字大小没有限制字符串(str)&#xff1a;使用单引号、双引号、三引号作为定界符以字母r或R引导的表示原始字符串 eg&#xff1a;rabc(原始字符串表示里面的转义字符不转义了)字节串(bytes)&#xff1a;以字母…

feign直接走熔断_SpringCloud微服务面试必问:Hystrix 服务降级、熔断

本文作者&#xff1a;JLSong 本文链接&#xff1a;https://www.cnblogs.com/songjilong/p/12770999.html1、Hystrix是什么&#xff1f;Hystrix 是一个用于处理分布式系统的延迟和容错的开源库&#xff0c;在分布式系统里&#xff0c;许多依赖不可避免的会调用失败&#xff0c;比…

httpServlet,java web后台服务

1&#xff0c;定时执行的类 package com.utils;import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; public class MyTimer extends Thread {// 间隔时间&#xff1a;小时private int intervalHours;// 误差(操作所需时间可能导致误差)&am…

mysql 会话级别的参数_PostgreSQL的参数设置级别及查询各级别的参数值

PostgreSQL的参数设置级别及查询各级别的参数值系统级别用户/角色级别用户/角色 数据库级别会话级别1.查询某参数在系统级别的设置直接到postgresql.conf中去过滤2.查询某参数在某用户级别的设置testdb# create user testa password testa;CREATE ROLETime: 85.415 mstestdb# …

【开源项目10】安卓图表引擎AChartEngine

安卓图表引擎AChartEngine(一) - 简介 http://blog.csdn.net/lk_blog/article/details/7645509 安卓图表引擎AChartEngine(二) - 示例源码概述和分析 http://blog.csdn.net/lk_blog/article/details/7642751 安卓图表引擎AChartEngine(三) - 示例源码折线图、饼图和柱状图 http…

python里面print是什么意思_python里print是什么意思

python里print是什么意思,多个,是一个,对象,默认值,一个函数 python里print是什么意思 易采站长站&#xff0c;站长之家为您整理了python里print是什么意思的相关内容。 Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。Python由Guido van Rossum于1989年底发明…