利用pyshp包给shapefile文件添加字段的实例

yipeiwu_com6年前Python基础

在已有的shapefile文件的基础上增加字段:

 # -*- coding:gb2312 -*-
import shapefile

r=shapefile.Reader(r"C:\Users\skfzh\Documents\python地理空间分析指南\第五章\5.5.4\output\NYC_MUSEUMS_UTM")
w=shapefile.Writer(r"C:\Users\skfzh\Documents\python地理空间分析指南\第五章\5.5.4\output\NYC_MUSEUMS_UTM_update",shapeType=r.shapeType)
w.fields=list(r.fields)
#新增加两个字段
w.field("LAT","F",8,5)
w.field("LON","F",8,5)

#将另外一个文件中的坐标点的信息存入新增加的两个字段
geo=shapefile.Reader(r"C:\Users\skfzh\Documents\python地理空间分析指南\第五章\5.5.4\NYC_MUSEUMS_GEO\NYC_MUSEUMS_GEO")
i=0  
for rec in r.iterShapeRecords():
 ls=rec.record
 lon,lat=geo.shape(i).points[0]  #可以再此处增加判断语句,限制i的大小。防止增加的字段数目不匹配问题
 # print(geo.shape(i).points)
 ls.extend([lat,lon])
 # print(ls)
 w.record(*ls)
 w.shape(rec.shape)
 i+=1

w.close()

以上这篇利用pyshp包给shapefile文件添加字段的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

pytorch torch.expand和torch.repeat的区别详解

1.torch.expand 函数返回张量在某一个维度扩展之后的张量,就是将张量广播到新形状。函数对返回的张量不会分配新内存,即在原始张量上返回只读视图,返回的张量内存是不连续的。类似...

python有证书的加密解密实现方法

本文实例讲述了python有证书的加密解密实现方法。分享给大家供大家参考。具体实现方法如下: 最近在做python的加解密工作,同时加完密的串能在php上能解出来,网上也找了一些靠谱的资...

Django 模型类(models.py)的定义详解

Django 模型类(models.py)的定义详解

一. #在models.py中添加 #代码如下 from django.db import models #出版商 class Publisher(models.Model):...

Python算法输出1-9数组形成的结果为100的所有运算式

问题: 编写一个在1,2,…,9(顺序不能变)数字之间插入+或-或什么都不插入,使得计算结果总是100的程序,并输出所有的可能性。例如:1 + 2 + 34–5 + 67–8 + 9 =...

python解决方案:WindowsError: [Error 2]

使用Python的rename()函数重命名文件时出现问题,提示 WindowsError: [Error 2] 错误,最初代码如下: def renameFile(filename...