使用pyshp包进行shapefile文件修改的例子


Posted in Python onDecember 06, 2019

由于最近在处理shp文件,想要跳出arcpy的限制,所以打算学习一下pyshp包的使用方法。在使用《Python地理空间分析指南(第2版)》的时候发现书中部分代码由于版本更新,无法运行。开贴记录踩过的雷。

这个问题是出现在5.5.4的shapefile文件修改中:

# -*- coding:gb2312 -*-
import shapefile
import utm
 
file_path=r"C:\Users\skfzh\Documents\python地理空间分析指南\第五章\5.5.4\NYC_MUSEUMS_GEO\NYC_MUSEUMS_GEO.shp"
r=shapefile.Reader(file_path)
# print(list(r.fields))
# print(r.shapeTypeName)
#版本修改,路径和类型都要在writer里面定义
w=shapefile.Writer(r"C:\Users\skfzh\Documents\python地理空间分析指南\第五章\5.5.4\output\NYC_MUSEUMS_UTM",\
          shapeType=r.shapeType)
w.fields=list(r.fields[1:])
for rec in r.iterShapeRecords():#新版本已经删除了w.records 
  # print(*rec.record)
  w.record(*rec.record)
for sha in r.iterShapes():
  # print(sha.points[0])
  lon,lat=sha.points[0]
  y,x,zone,band=utm.from_latlon(lat,lon)
  w.point(x,y)
 
w.close()

以上这篇使用pyshp包进行shapefile文件修改的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现子类调用父类的方法
Nov 10 Python
python使用urlparse分析网址中域名的方法
Apr 15 Python
Python实现单词拼写检查
Apr 25 Python
在Python中用has_key()方法查找键是否存在的教程
May 21 Python
Python 反转字符串(reverse)的方法小结
Feb 20 Python
对python中使用requests模块参数编码的不同处理方法
May 18 Python
Python实现将通信达.day文件读取为DataFrame
Dec 22 Python
python爬取内容存入Excel实例
Feb 20 Python
Python求一批字符串的最长公共前缀算法示例
Mar 02 Python
python实现截取屏幕保存文件,删除N天前截图的例子
Aug 27 Python
Python 用三行代码提取PDF表格数据
Oct 13 Python
python爬虫实现POST request payload形式的请求
Apr 30 Python
利用pyshp包给shapefile文件添加字段的实例
Dec 06 #Python
详解Python在使用JSON时需要注意的编码问题
Dec 06 #Python
用python求一重积分和二重积分的例子
Dec 06 #Python
解决Numpy中sum函数求和结果维度的问题
Dec 06 #Python
numpy按列连接两个维数不同的数组方式
Dec 06 #Python
使用Python实现分别输出每个数组
Dec 06 #Python
Python 获取numpy.array索引值的实例
Dec 06 #Python
You might like
支持中文的PHP按字符串长度分割成数组代码
2015/05/17 PHP
PHP附件下载中文名称乱码的解决方法
2015/12/17 PHP
php 实现Hash表功能实例详解
2016/11/29 PHP
php中错误处理操作实例分析
2019/08/23 PHP
尽可能写"友好"的"Javascript"代码
2007/01/09 Javascript
js 事件处理函数间的Event物件是否全等
2011/04/08 Javascript
jquery 与NVelocity 产生冲突的解决方法
2011/06/13 Javascript
jquery三个关闭弹出层的小示例
2013/11/05 Javascript
Javascript数组Array方法解读
2016/03/13 Javascript
jQuery配合coin-slider插件制作幻灯片效果的流程解析
2016/05/13 Javascript
Bootstrap框架下下拉框select搜索功能
2020/03/26 Javascript
Javascript 链式作用域详细介绍
2017/02/23 Javascript
JavaScript设计模式之策略模式详解
2017/06/09 Javascript
在Swiper内如何制作CSS3动画效果示例代码
2017/12/07 Javascript
浅谈Node 异步IO和事件循环
2019/05/05 Javascript
vue-cli4.0多环境配置变量与模式详解
2020/12/30 Vue.js
vue3自定义dialog、modal组件的方法
2021/01/04 Vue.js
[02:35]DOTA2英雄基础教程 狙击手
2014/01/14 DOTA
Python3实现从文件中读取指定行的方法
2015/05/22 Python
Python切片知识解析
2016/03/06 Python
python http基本验证方法
2018/12/26 Python
pytorch中如何使用DataLoader对数据集进行批处理的方法
2019/08/06 Python
Python程序暂停的正常处理方法
2019/11/07 Python
浅析Python 简单工厂模式和工厂方法模式的优缺点
2020/07/13 Python
CSS3打造百度贴吧的3D翻牌效果示例
2017/01/04 HTML / CSS
CSS3实现文本垂直排列的方法
2018/07/10 HTML / CSS
后勤人员自我鉴定
2013/10/20 职场文书
入党思想汇报怎么写
2014/04/03 职场文书
法学专业毕业实习自我鉴定2014
2014/09/27 职场文书
教师批评与自我批评发言稿
2014/10/15 职场文书
个人借款协议书范本
2014/11/17 职场文书
小学教师岗位职责
2015/04/02 职场文书
css实现文章分割线样式的多种方法总结
2021/04/21 HTML / CSS
SpringBoot读取Resource下文件的4种方法
2021/07/02 Java/Android
mysql脏页是什么
2021/07/26 MySQL
世界无敌的ICOM IC-R9500宽频接收机
2022/03/25 无线电