python 2.7导入arcpy_导入 ArcPy
导入模块
模块为通常包含函数和类的 Python 文件。ArcPy 由一系列模块提供支持,其中包括以下模块:数据访问模块 (arcpy.da)
制图模块 (arcpy.mp)
元数据模块 (arcpy.metadata)
共享模块 (arcpy.sharing)
Network Analyst 模块(arcpy.nax 和 arcpy.na)
要导入整个模块,请使用“导入”模块:# Import only arcpy.mp
import arcpy.mp
当然,Python 还具有很多其他核心模块和第三方模块。如果还想使用 Python 的核心 os 和 sys 模块,可以使用相似的导入方式:# Import arcpy, os and sys
import arcpy
import os
import sys
在很多情况下,用户可能不想使用整个模块或无需使用整个模块。如果只导入某一模块的一部分,可以使用 from-import 语句。在下例中,将导入 env 类(env 类包含所有地理处理环境)。现在无需以 arcpy.env 的形式访问环境,而可以将其简化为 env。# Import env from arcpy and set the workspace environment
from arcpy import env
env.workspace = 'c:/data'
遵循相同的思路,有时用户可能需要注意:如何对模块或模块的一部分进行标识以使脚本更具可读性,以及对于首选项来说默认名称可能过长。在上述任一情况下,均可以使用 from-import-as 的形式。与先前的示例相同,下面的示例中也将导入 env 类,但会将其指定为 ENV 的名称:# Import env from arcpy as ENV and set the workspace environment
from arcpy import env as ENV
ENV.workspace = 'c:/data'
可以使用相同方式导入制图模块:# Import the mapping module from arcpy as MAP and create an ArcGISProject
# object
from arcpy import mp as MAP
aprx = MAP.ArcGISProject('c:/Projects/YosemiteNP/Yosemite.aprx')
其他版本的导入操作使用 from-import-* 的形式。模块的内容将被直接导入到命名空间中,这表示用户随后可以直接使用所有这些内容,而无需为它们添加前缀。例如:# Import management from arcpy as *
from arcpy.management import *
但是,使用此方法存在一些风险。具有相同名称的其他对象、变量、模块等将被覆盖,另外在使用大型模块时,命名空间可能会变得异常拥挤和杂乱。可以此方式考虑该问题:在下例中,管理模块和分析模块都将被导入为 *。这两个模块都具有裁剪工具。如果现在尝试使用裁剪工具,那么实际使用的会是哪种裁剪工具? 答案是后者,但是此方法可能导致在阅读脚本时出现不确定或难以阅读的情况。# Import the management and analysis modules from arcpy as *
from arcpy.management import *
from arcpy.analysis import *
# Which Clip is it?
Clip('standb4', 'clipcov', 'standby_clip', 1.25)
但是在某些情况下,from-import-* 可以简化代码,例如,在使用 ArcGIS Spatial Analyst extension 的 sa 模块的情况下。sa 模块的优势之一在于,可以在一行中嵌套多个类和函数以生成输出栅格对象。
许可:
以下两个实例都需要 ArcGIS Spatial Analyst extension 来运行。# Import arcpy and the sa module as *
import arcpy
from arcpy.sa import *
# Get input parameters
inRaster1 = arcpy.GetParameterAsText(0)
inRaster2 = arcpy.GetParameterAsText(1)
inRaster3 = arcpy.GetParameterAsText(2)
outRaster = (Raster(inRaster1) + (Raster(inRaster2) - Raster(inRaster3)))
现在比较下一个代码块,此代码块使用常规 import-from 语句。现在假设再向代码中添加一些类和函数。即使为每个函数和类添加 sa,代码的体积也将迅速增加,这将破坏可读性并且使代码行变得更加庞大。# Import arcpy and the sa module
import arcpy
from arcpy import sa
# Get input parameters
inRaster1 = arcpy.GetParameterAsText(0)
inRaster2 = arcpy.GetParameterAsText(1)
inRaster3 = arcpy.GetParameterAsText(2)
outRaster = (sa.Raster(inRaster1) + (sa.Raster(inRaster2) - sa.Raster(inRaster3)))
python 2.7导入arcpy_导入 ArcPy相关推荐
- python不同层级模块的导入和文件的读写
python不同层级模块的导入和文件的读写(2-201812103) 1 python 在不同层级目录import 模块的方法 2 python中文件的读写 1 python 在不同层级目录impor ...
- python模块与包的导入
python模块与包的导入 1. 模块与包的区别 模块,即module,一个包含python语句的.py文件就是一个模块!每个源代码文件都会自动成为模块!没有额外的语法用来声明模块. 包,又称模块包, ...
- Python编程语言学习:包导入和模块搜索路径简介、使用方法之详细攻略
Python编程语言学习:包导入和模块搜索路径简介.使用方法之详细攻略 目录 包导入和模块搜索路径简介 1.Pyhon搜索模块路径的机制 2.自定义配置搜索路径
- 成功解决:将后缀.pyx格式文件(linux环境)编译成pyd文件(windows环境下)实现python编程加载或导入
成功解决:将后缀.pyx格式文件(linux环境)编译成pyd文件(windows环境下)实现python编程加载或导入 目录 解决问题 解决思路 解决方法 解决问题 .pyx格式文件,在window ...
- 【Python3】Python模块与包的导入
[Python3]Python模块与包的导入 一.模块导入 1. 定义 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语 ...
- python笔记-1(import导入、time/datetime/random/os/sys模块)
python笔记-6(import导入.time/datetime/random/os/sys模块) 一.了解模块导入的基本知识 此部分此处不展开细说import导入,仅写几个点目前的认知即可.其它内 ...
- python读取matlab矩阵_matlab、python中矩阵的互相导入导出方式
还有一种最流行的h5py.. 过几天更新 ------------在python中导出矩阵至matlab------------ 如果矩阵是mxn维的. 那么可以用 : np.savetxt('dev ...
- python标准库不需要导入即可使用其中的所有对象和方法_2021智慧树网课答案创业基础考试期末答案...
加入塞利凡诺夫试剂并加热能迅速出现红色的物质为(). A design career might be a good choice forsomeone who likes art.A. TrueB. ...
- python数据导入之导入各类文件方法
python数据导入之导入各类文件方法 01.csv的导入方法 1.如果数据是很规范的那种的话,而且文件不算太大的话,可以用以下代码导入即可: import pandas as pd csv_da ...
- python标准库不需要导入即可使用其中的所有对象和方法_Python程序设计-中国大学mooc-题库零氪...
<Python程序设计基础>课程导学 单元测验 1.下面属于Python应用领域的有? A.数据分析 B.云计算 C.开发操作系统 D.网络安全 E.树莓派 F.数据可视化 2.在Wind ...
最新文章
- 大厂程序媛的特殊烦恼:男朋友工资只有自己的60%,天天阴阳怪气!
- 独家 | 数据科学机器学习面试题,来挑战吧~
- 三星i8150 刷机
- python web server comparison
- 聚焦数字货币的发展与监管
- 三门科目分析信息系统项目管理师如何备考
- OpenSSL 之 RSA 相关命令学习笔记
- linux添加windows网络打印机,Linux Mint如何添加windows分享的网络打印机?
- python遍历dataframe中的每个字符_pandas中遍历dataframe的每一个元素的实现
- [Python] L1-038. 新世界 团体程序设计天梯赛GPLT
- NHibernate初探(一)简单且完整的示例
- 第三部分:Android 应用程序接口指南---第一节:应用程序组件---第一章1-1.Fragment...
- 解决虚拟机桥接模式无法上网的问题
- Java Web 2.1.4 HTML 表单标签与表单设计 (实例)
- 机器人动力学建模之理解惯性张量
- word文档设置页眉页脚的技巧
- 咱张家界桑植的野外小吃
- 什么是SEO,新手SEO须知!
- c语言动态与静态分配内存空间的区别
- 内部存储器——①静态存储器