使用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解析中国天气网的天气数据
Mar 21 Python
自己编程中遇到的Python错误和解决方法汇总整理
Jun 03 Python
python实现备份目录的方法
Aug 03 Python
Python中绑定与未绑定的类方法用法分析
Apr 29 Python
详解Python多线程
Nov 14 Python
通过源码分析Python中的切片赋值
May 08 Python
python中实现指定时间调用函数示例代码
Sep 08 Python
解决Django中修改js css文件但浏览器无法及时与之改变的问题
Aug 31 Python
python连接、操作mongodb数据库的方法实例详解
Sep 11 Python
pycharm安装及如何导入numpy
Apr 03 Python
python自动化之如何利用allure生成测试报告
May 02 Python
python使用torch随机初始化参数
Mar 22 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生成文件
2007/01/15 PHP
Thinkphp中数据按分类嵌套循环实现方法
2014/10/30 PHP
隐性调用php程序的方法
2015/06/13 PHP
基于PHP实现的事件机制实例分析
2015/06/18 PHP
微信公众平台DEMO(PHP)
2016/05/04 PHP
PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)实例详解
2018/04/20 PHP
PHP上传文件及图片到七牛的方法
2018/07/25 PHP
CI框架网页缓存简单用法分析
2018/12/26 PHP
PHP7生产环境队列Beanstalkd用法详解
2020/05/19 PHP
nodejs 后缀名判断限制代码
2011/03/31 NodeJs
让innerText在firefox火狐和IE浏览器都能用的写法
2011/05/14 Javascript
js 限制数字 js限制输入实现代码
2012/12/04 Javascript
通过js简单实现将一个文本内容转译成加密文本
2013/10/22 Javascript
浮动的div自适应居中显示的js代码
2013/12/23 Javascript
vue 微信授权登录解决方案
2018/04/10 Javascript
Nodejs调用Dll模块的方法
2018/09/17 NodeJs
关于RxJS Subject的学习笔记
2018/12/05 Javascript
webpack4实现不同的导出类型
2019/04/09 Javascript
vue使用recorder.js实现录音功能
2019/11/22 Javascript
详解ECMAScript2019/ES10新属性
2019/12/06 Javascript
jquery实现广告上下滚动效果
2021/03/04 jQuery
[02:05]DOTA2完美大师赛趣味视频之看我表演
2017/11/18 DOTA
python中安装模块包版本冲突问题的解决
2017/05/02 Python
完美解决Python 2.7不能正常使用pip install的问题
2018/06/12 Python
Django框架的中的setting.py文件说明详解
2018/10/15 Python
Python之循环结构
2019/01/15 Python
Python OpenCV去除字母后面的杂线操作
2020/07/05 Python
Django修改app名称和数据表迁移方案实现
2020/09/17 Python
Python全局变量与global关键字常见错误解决方案
2020/10/05 Python
Opencv常见图像格式Data Type及代码实例
2020/11/02 Python
Algenist奥杰尼官网:微藻抗衰老护肤品牌
2017/07/15 全球购物
施华洛世奇加拿大官网:SWAROVSKI加拿大
2018/06/03 全球购物
耐克亚太地区:Nike APAC
2019/12/07 全球购物
大学生入党积极分子自我评价
2014/09/20 职场文书
2014年单位工作总结范文
2014/11/27 职场文书
五一晚会主持词
2015/07/01 职场文书