Python使用pyshp库读取shapefile信息的方法

yipeiwu_com5年前Python基础

通过pyshp库,可以读写Shapefile文件,查询相关信息,github地址为

https://github.com/GeospatialPython/pyshp

import shapefile # 使用pyshp库
 
file = shapefile.Reader("data\\市界.shp")
shapes = file.shapes()
 
# <editor-fold desc="读取元数据">
print(file.shapeType) # 输出shp类型
'''
NULL = 0
POINT = 1
POLYLINE = 3
POLYGON = 5
MULTIPOINT = 8
POINTZ = 11
POLYLINEZ = 13
POLYGONZ = 15
MULTIPOINTZ = 18
POINTM = 21
POLYLINEM = 23
POLYGONM = 25
MULTIPOINTM = 28
MULTIPATCH = 31
'''
print(file.bbox) # 输出shp的范围
# </editor-fold>
# print(shapes[1].parts)
# print(len(shapes)) # 输出要素数量
# print(file.numRecords) # 输出要素数量
# print(file.records()) # 输出所有属性表
 
# <editor-fold desc="输出字段名称和字段类型">
'''
字段类型:此列索引处的数据类型。类型可以是:
“C”:字符,文字。
“N”:数字,带或不带小数。
“F”:浮动(与“N”相同)。
“L”:逻辑,表示布尔值True / False值。
“D”:日期。
“M”:备忘录,在GIS中没有意义,而是xbase规范的一部分。
'''
# fields = file.fields
# print(fields)
# </editor-fold>
 
 
# <editor-fold desc="输出几何信息">
for index in range(len(shapes)):
 geometry = shapes[index]
 # print(geometry.shapeType)
 # print(geometry.points)
# </editor-fold>

以上这篇Python使用pyshp库读取shapefile信息的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

django中使用Celery 布式任务队列过程详解

django中使用Celery 布式任务队列过程详解

本文记录django中如何使用celery完成异步任务。 Celery 是一个简单、灵活且可靠的,处理大量消息的分布式系统,并且提供维护这样一个系统的必需工具。 它是一个专注于实时处理的...

python高效过滤出文件夹下指定文件名结尾的文件实例

如下所示: import os def anyTrue(predicate, sequence): return True in map(predicate, sequence)...

Python之虚拟环境virtualenv,pipreqs生成项目依赖第三方包的方法

Python之虚拟环境virtualenv,pipreqs生成项目依赖第三方包的方法

virtualenv简介 含义: virtual:虚拟,env:environment环境的简写,所以virtualenv就是虚拟环境,顾名思义,就是虚拟出来的一个新环境,比如我们使用的...

pandas重新生成索引的方法

在数据处理的过程中,出现了这样的问题,筛选某些数据,出现索引从600多开始,但是我希望这行数据下标从0开始。 这个时候,我想到的是: df.reindex(range(length)...

关于Python内存分配时的小秘密分享

关于Python内存分配时的小秘密分享

前言 Python 中的sys 模块极为基础而重要,它主要提供了一些给解释器使用(或由它维护)的变量,以及一些与解释器强交互的函数。 本文将会频繁地使用该模块的getsizeof()...