对python 读取线的shp文件实例详解

yipeiwu_com5年前Python基础

如下所示:

import shapefile
sf = shapefile.Reader("E:\\1.2\\cs\\DX_CSL.shp")
shapes = sf.shapes()
print shapes[1].parts
print len(shapes) #79条记录
#print len(list(sf.iterShapes())) #79条记录
#for name in dir(shapes[3]): #不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表
 #       if not name.startswith('__'):
 #           print  name


print sf.numRecords
recds = sf.records()
for i in range(sf.numRecords):
    rcd = sf.record(i)
    #sp = rcd.shape 没有shape属性
    #print sp.points
#recds.shape
#读取记录
print sf.shapeRecord(1).shape.shapeType
print sf.shapeRecord(1).record
print sf.fields


print ''          
for shp in range(len(shapes)):
    shap = shapes[shp]
    print shap.points
    print shap.shapeType
    print len(shap.points)
    for i in range(len(shap.points)):
        print shap.points[i]
        for x in range(len(shap.points[i])):
            print shap.points[i][x]

以上这篇对python 读取线的shp文件实例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python异步编程 使用yield from过程解析

前言 yield from 是 Python3.3 后新加的语言结构。yield from的主要功能是打开双向通道,把最外层的调用方法与最内层的子生成器连接起来。这两者就可以进行发送值和...

python操作xml文件示例

复制代码 代码如下:def get_seed_data(filename):dom = minidom.parse(filename)root = dom.documentElement...

Pandas DataFrame 取一行数据会得到Series的方法

Pandas DataFrame 取一行数据会得到Series的方法

Pandas DataFrame 取一行数据会得到Series的方法 如题,想要取如下dataframe的一行数据,以为得到的还是dataframe lista = [1, 3, 7...

Python常用的日期时间处理方法示例

#-*- coding: utf-8 -*- import datetime #给定日期向后N天的日期 def dateadd_day(days): d1 = datetim...

python模仿网页版微信发送消息功能

python模仿网页版微信发送消息功能

这个微信版网页版虽然繁琐,但是不是很难,全程不带加密的。有兴趣的可以试着玩一玩,如果有兴趣的话,可以完善一下,做一些比较有意思的东西。 开发环境:Windows10 开发语言:Pytho...