参考:ArcPy 函数列表(按字母顺序)

参考:在arcgis上用python脚本(arcpy)做数据批处理


1. 导入 ArcPy,定义 Workspace

>>> import arcpy
>>> arcpy.env.workspace = r"D:\01-Working\2017\20171204-IDL_Average"
>>> print(arcpy.env.workspace)
D:\01-Working\2017\20171204-IDL_Average

2. 浏览 Workspace 内部文件

>>> allfiles = arcpy.ListFiles()
>>> print(allfiles)
[u'20171023-wan.zip', u'555.zip', u'85858.zip', u'GOCI_06_AVG_GDPS_RC_GEO_ZJ_MASK_BIL_FLAASH_TSM.tif'] >>> all_tifs = arcpy.ListFiles("*.tif")
>>> print(all_tifs)
[u'bb.tif', u'cc.tif', u'dd5.tif', u'GOCI_06_AVG_GDPS_RC_GEO_ZJ_MASK_BIL_FLAASH_TSM.tif', u'test.tif'] >>> all_rasters = arcpy.ListRasters()
>>> print(all_rasters)
[u'bb.tif', u'cc.tif', u'dd5.tif', u'GOCI_06_AVG_GDPS_RC_GEO_ZJ_MASK_BIL_FLAASH_TSM.tif', u'test.tif']
>>>

3. 利用 for 循环显示

>>> for i in all_rasters:
... print(i)
...
bb.tif
cc.tif
dd5.tif
GOCI_06_AVG_GDPS_RC_GEO_ZJ_MASK_BIL_FLAASH_TSM.tif
test.tif

ListFiles:根据查询字符串返回当前工作空间中的文件列表。通过指定搜索条件可以限制结果。

参考:String Processing Routines —— 字符串处理函数


01   STRING 返回字符串。
02   STRCMP 比较字符串,一样返回1,不一样返回0,默认大小写敏感。
03   STRMATCH 字符串进行比较,一致返回1,不一致返回0。
04   STRCOMPRESS 将字符串中的空格和Tab等压缩成一个空格。
05   STRJOIN 将字符串数组合并成一个字符串。
06   STRLEN 返回字符串的长度。
07   STRPOS 字符串中字符所在的索引值,返回数值。
08   STRMID 字符串截取,返回截取后的字符串。
09   STRPUT  将后面字符串替换前面相同数目的字符串。
10   STRSPLIT 默认返回拆分索引数组,也可返回拆分字符串数组。
11   STRTRIM  删除字符串前后的空格。
12   STRUPCASE  字符串大写。
13   STRLOWCASE 字符串小写。

序号 名称  

功能说明

  语法 & 举例
01 ListFiles   根据查询字符串返回当前工作空间中的文件列表。通过指定搜索条件可以限制结果。
ListFiles({wild_card})
 

◈ 举例:
  files = arcpy.ListFiles("*.csv")

 02 ListRasters   按名称和栅格类型返回工作空间中的栅格列表。
ListRasters({wild_card}, {raster_type})
◈  raster_type:BMP、JPG、TIF、IMG等,默认 All。
◈  返回值为 String 数组
 

◈ 举例:
  files = arcpy.ListFiles("*", "TIF")

 03 ListFeatureClasses  

列出工作空间中的要素类,受名称、要素类型和可选要素数据集的限制。
ListFeatureClasses({wild_card}, {feature_type}, {feature_dataset})
◈  featrue_type:Point、Polygon、Polyline等,默认 All。

 

◈ 举例:
featureclasses = arcpy.ListFeatureClasses()
for fc in featureclasses:
    arcpy.CopyFeatures_management( fc, os.path.join("c:/base/output.gdb", os.path.splitext(fc)[0]))

 04 ENVI::CreateRaster   方法:创建一个 ENVIRaster 并将其写入到一个文件中。
ResultENVI.CreateRaster(URI [, Data] [, DATA_IGNORE_VALUE=value] [, DATA_TYPE=variable] [, ERROR=variable] [, INHERITS_FROM=ENVIRaster] [, INTERLEAVE=string] [, METADATA= ENVIRasterMetadata][, NBANDS=variable] [, NCOLUMNS=variable] [, NROWS=variable] [, SPATIALREF=ENVISpatialRef] [, TIME=ENVITime])
◈ URI:数据的路径
◈ Data:数组
◈ INHERITS_FROM=ENVIRaster:参考的 ENVIRaster
  ◈ 举例:
  resultFile = 'D:\01-Working\2017\20171204-IDL平均计算\mm.tif'
  newRaster = e.CreateRaster(resultFile, data, INHERITS_FROM = raster)
  newRaster.Save
 05 STRJOIN   将字符串数组合并成一个字符串。
STRJOIN(String [, Delimiter], /SINGLE)
◈ String:字符串数组
◈ Delimiter:用于连接数组的分隔符
 

◈ 举例:
  resultFile = 'D:\01-Working\2017\20171204-IDL平均计算\mm.tif'
  newRaster = e.CreateRaster(resultFile, data, INHERITS_FROM = raster)
  newRaster.Save

 06 STRLEN  

返回字符串的长度。
STRLEN(Expression)

   
 07 STRPOS  

字符串中字符所在的索引值,返回数值。
STRPOS(Expression, Search_String [, Pos], /REVERSE_OFFSET, /REVERSE_SEARCH)
◈ Pos:开始搜索的索引值
◈ REVERSE_OFFSET:开始索引从后面计算
◈ REVERSE_SEARCH:从后面开始搜索

 

◈ 返回值:0
  STRPOS('fun is fun', 'fun')

◈ 返回值:7
  STRPOS('fun is fun', 'fun', /REVERSE_SEARCH)

◈ 返回值:7
  STRPOS('fun is fun', 'fun', )

◈ 返回值:7
  STRPOS('fun is fun', 'fun', , /REVERSE_OFFSET)

 08 STRMID  

字符串截取,返回截取后的字符串。
STRMID(Expression, First_Character [, Length], /REVERSE_OFFSET)
◈ First_Character:开始搜索的索引值
◈ Length:搜索的长度,默认到最后
◈ REVERSE_OFFSET:索引值从后往前算

 

◈ 返回值:lexbnlee
  STRMID('alexbnlee', 1)

◈ 返回值:ee
  STRMID('alexbnlee', 1, /REVERSE_OFFSET)

◈ 返回值:bn
  STRMID('alexbnlee', 4, 2)

 09 STRPUT  

将后面字符串替换前面相同数目的字符串。
STRPUT, Destination, Source [, Position]
◈ Destination:变量,操作后发生变化
◈ Source:字符串
◈ Position:替换的位置索引,默认是0

 

◈ 变量 A = "ALEXBNLEE"
◈ 返回值:IDLXBNLEE
  STRPUT, A, "IDL" & PRINT, A

◈ 变量 A = "ALEXBNLEE"
◈ 返回值:ALEXBNIDL
  STRPUT, A, "IDL", 6 & PRINT, A

 10 STRSPLIT   默认返回拆分索引数组,也可返回拆分字符串数组。
STRSPLIT(String [, Pattern] [, COUNT=variable] [, ESCAPE=string] [, /FOLD_CASE]] [, /EXTRACT|, LENGTH=variable])
◈ String:欲拆分的字符串或字符串数组
◈ Pattern:字符串分隔符,默认是空格/TAB
◈ COUNT=variable:得到拆分后得到数组的元素个数
◈ ESCAPE=string:删除符合的string值
◈ FOLD_CASE:大小写不敏感
◈ EXTRACT:返回字符串数组
◈ LENGTH=variable:拆分后,字符串数组中每个字符串的长度,返回值为数组
 

◈ 变量 str = "alex is so cute"
◈ 变量 str1 = "alex-is-so-cute"
◈ 返回值:[0, 5, 8, 11]
  STRSPLIT(str)
  STRSPLIT(str1, "-")

◈ 变量 str = "alex is so cute"
◈ 处理后,count=4
  STRSPLIT(str, COUNT=count)

◈ 变量 str2 = ";alex;-;is;-;so;-;cute;"
◈ 返回值:alex-is-so-cute
  STRSPLIT(str2, ESCAPE=";", /EXTRACT)

◈ 变量 str = "alex is so cute"
◈ 处理后,length=[4, 2, 2, 4]
  STRSPLIT(str, LENGTH=length)

 11 STRTRIM  

删除字符串前后的空格。
STRTRIM(String [, Flag])
◈ Flag:0=后空格,1=前空格,2=前后空格

 

STRTRIM(a):去掉后面的空格
STRTRIM(a, 1):去掉前面的空格
STRTRIM(a, 2):去掉前后的空格

 12 STRUPCASE  

字符串大写。
STRUPCASE(String)

 
 13 STRLOWCASE  

字符串小写。
STRLOWCASE(String)

   

【272】ArcPy处理数据的更多相关文章

  1. 转:[Asp.net]常见数据导入Excel,Excel数据导入数据库解决方案,总有一款适合你!

    引言 项目中常用到将数据导入Excel,将Excel中的数据导入数据库的功能,曾经也查找过相关的内容,将曾经用过的方案总结一下. 方案一 NPOI NPOI 是 POI 项目的 .NET 版本.POI ...

  2. arcgis python arcpy add data script添加数据脚本

    arcgis python arcpy add data script添加数据脚本mxd = arcpy.mapping.MapDocument("CURRENT")... df ...

  3. 【284】◀▶ arcpy.da & arcpy 数据访问模块

    使用游标访问数据 数据访问模块 (arcpy.da) 参考: ArcGIS Python编程案例(9)-ArcPy数据访问模块 读取几何 写入几何 使用 Python 指定查询 01   da.Sea ...

  4. 【273】利用ArcPy建立处理数据的脚本

    这个脚本可以直接运行处理程序,首先在 ArcPy 上面测试,成功后写入文件,下面的代码实现将指定文件夹内部的栅格数据进行 Calculate Statistics 操作,否则在进行专题图制作的时候会出 ...

  5. arcPy实现要素图层数据的复制(选择特定字段填写属性)

    >>> import arcpy>>> fc=r"D:\楚雄州数据\testdata.gdb">>> editor=arcpy ...

  6. ArcPy数据列表遍历

    ArcPy数据列表遍历 批处理脚本的首要任务之一是为可用数据编写目录,以便在处理过程中可以遍历数据. ArcPy 具有多个专为创建此类列表而构建的函数. 函数 说明 ListFields(datase ...

  7. ArcGIS ArcPy Python处理数据

    1.使用搜索游标查看行中的字段值.import arcpy # Set the workspace arcpy.env.workspace = "c:/base/data.gdb" ...

  8. 使用arcpy添加grb2数据到镶嵌数据集中

    #!coding: utf-8 import numpy as np import arcpy def addGRB2ToMosaic(grb2name): print "start add ...

  9. 终于等到你:CYQ.Data V5系列 (ORM数据层)最新版本开源了

    前言: 不要问我框架为什么从收费授权转到免费开源,人生没有那么多为什么,这些年我开源的东西并不少,虽然这个是最核心的,看淡了就也没什么了. 群里的网友:太平说: 记得一年前你开源另一个项目的时候我就说 ...

随机推荐

  1. kvm 客户机系统的代码是如何运行的

    一个普通的 Linux 内核有两种执行模式:内核模式(Kenerl)和用户模式 (User).为了支持带有虚拟化功能的 CPU,KVM 向 Linux 内核增加了第三种模式即客户机模式(Guest), ...

  2. js外观模式

    外观模式为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用. 外观模式类图: 然而对于外观模式而言,是没有一个一般化的类图描述,下面演示一个外观模式的 ...

  3. CSS基础(float属性与清除浮动)

    3.8 这是CSS里比较重要的属性:浮动,这个属性会在以后经常用到,算是一个重点吧 浮动 语法:float:left  |  right  |  none 特点: 浮动的元素不占位置,脱离了标准文档流 ...

  4. LightOJ - 1079 概率dp

    题意:n个银行,每个有价值和被抓概率,要求找被抓概率不超过p的最大价值 题解:dp[i][j]表示前i个取j价值的所需最小概率,01背包处理,转移方程dp[i][j]=min(dp[i-1][j],d ...

  5. 发布本地jar到Nexus仓库

    mvn deploy:deploy-file -Durl=http://192.168.0.4:8081/nexus/content/repositories/thirdparty -Dreposit ...

  6. 树莓派(Arduino)仿真软件 —— Fritzing

    Fritzing 官网:Fritzing Fritzing 下载地址:Fritzing Download windows 下降 zip 文件解压后,免安装双击 exe 即可运行:

  7. shell split函数的使用

    #!/bin/awk -f BEGIN{FS=","} {split($1,name," "); for (i in name) print name[i] }

  8. 学习动态性能表(22)V$resource_limit

    学习动态性能表 第20篇--V$resource_limit  2007.6.15 就一条SQL语句供你参考: select * from V$RESOURCE_LIMIT where resourc ...

  9. 关于C语言字符串函数使用的一点心得

    就字符串的拼接函数为例strcat. 原型:extern char *strcat(char *dest,char *src);用法:#include <string.h> 功能:把src ...

  10. [转]css讲解 font-weight:bold和bolder区别

    font-weight 字体浓淡(精细)属性 该CSS属性用来设定字体的浓淡程度. 值:normal | bold | bolder | lighter | 100 | 200 | 300 | 400 ...