【272】ArcPy处理数据
参考:在arcgis上用python脚本(arcpy)做数据批处理
1. 导入 ArcPy,定义 Workspace
1 2 3 4 | >>> 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 内部文件
1 2 3 4 5 6 7 8 9 10 11 12 | >>> 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 循环显示
1 2 3 4 5 6 7 8 | >>> 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}) |
◈ 举例: |
||
02 | ListRasters | 按名称和栅格类型返回工作空间中的栅格列表。 ListRasters({wild_card}, {raster_type}) ◈ raster_type:BMP、JPG、TIF、IMG等,默认 All。 ◈ 返回值为 String 数组 |
◈ 举例: |
||
03 | ListFeatureClasses |
列出工作空间中的要素类,受名称、要素类型和可选要素数据集的限制。 |
|
||
04 | ENVI::CreateRaster | 方法:创建一个 ENVIRaster 并将其写入到一个文件中。 Result = ENVI.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:用于连接数组的分隔符 |
◈ 举例: |
||
06 | STRLEN |
返回字符串的长度。 |
|||
07 | STRPOS |
字符串中字符所在的索引值,返回数值。 |
◈ 返回值:0
◈ 返回值:7 ◈ 返回值:7 ◈ 返回值:7 |
||
08 | STRMID |
字符串截取,返回截取后的字符串。 |
◈ 返回值:lexbnlee
◈ 返回值:ee ◈ 返回值:bn |
||
09 | STRPUT |
将后面字符串替换前面相同数目的字符串。 |
◈ 变量 A = "ALEXBNLEE" ◈ 变量 A = "ALEXBNLEE" |
||
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" ◈ 变量 str = "alex is so cute" ◈ 变量 str2 = ";alex;-;is;-;so;-;cute;" ◈ 变量 str = "alex is so cute" |
||
11 | STRTRIM |
删除字符串前后的空格。 |
◈ STRTRIM(a):去掉后面的空格 |
||
12 | STRUPCASE |
字符串大写。 |
|
||
13 | STRLOWCASE |
字符串小写。 |
posted on 2017-12-07 10:00 McDelfino 阅读(1995) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)