使用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获取apk文件URL地址实例
Nov 01 Python
python冒泡排序算法的实现代码
Nov 21 Python
Python列表list数组array用法实例解析
Oct 28 Python
详细解析Python中的变量的数据类型
May 13 Python
python 调用win32pai 操作cmd的方法
May 28 Python
python使用pil进行图像处理(等比例压缩、裁剪)实例代码
Dec 11 Python
Python贪心算法实例小结
Apr 22 Python
python 函数嵌套及多函数共同运行知识点讲解
Mar 03 Python
Python爬虫实例——爬取美团美食数据
Jul 15 Python
树莓派4B安装Tensorflow的方法步骤
Jul 16 Python
PyCharm 安装与使用配置教程(windows,mac通用)
May 12 Python
Python万能模板案例之matplotlib绘制直方图的基本配置
Apr 13 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分页类的代码
2011/05/18 PHP
phpmyadmin显示utf8_general_ci中文乱码的问题终级篇
2013/04/08 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(五)
2014/06/23 PHP
Zend Framework页面缓存实例
2014/06/25 PHP
php简单实现查询数据库返回json数据
2015/04/16 PHP
[原创]CI(CodeIgniter)简单统计访问人数实现方法
2016/01/19 PHP
javascript学习笔记(四) Number 数字类型
2012/06/19 Javascript
Javascript小技巧之生成html元素
2014/05/15 Javascript
js中最容易被忽视的事件问题大总结
2016/05/15 Javascript
深入理解JS addLoadEvent函数
2016/05/20 Javascript
jQuery基础_入门必看知识点
2016/07/04 Javascript
基于javascript实现按圆形排列DIV元素(二)
2016/12/02 Javascript
在点击div中的p时,如何阻止事件冒泡
2017/02/07 Javascript
如何在AngularJs中调用第三方插件库
2017/05/21 Javascript
jQuery实现可兼容IE6的淡入淡出效果告警提示功能示例
2017/09/20 jQuery
Redux实现组合计数器的示例代码
2018/07/04 Javascript
解决ie11 SCRIPT5011:不能执行已释放Script的代码问题
2019/05/05 Javascript
JavaScript中AOP的实现与应用
2019/05/06 Javascript
JS字符串和数组如何实现相互转化
2020/07/02 Javascript
[46:20]TFT vs Secret Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
使用Python脚本将Bing的每日图片作为桌面的教程
2015/05/04 Python
Python文件读取的3种方法及路径转义
2015/06/21 Python
利用Tkinter(python3.6)实现一个简单计算器
2017/12/21 Python
Python OpenCV 直方图的计算与显示的方法示例
2018/02/08 Python
对django中render()与render_to_response()的区别详解
2018/10/16 Python
Python中文件的写入读取以及附加文字方法
2019/01/23 Python
Python爬虫运用正则表达式的方法和优缺点
2019/08/25 Python
使用pytorch搭建AlexNet操作(微调预训练模型及手动搭建)
2020/01/18 Python
Python threading.local代码实例及原理解析
2020/03/16 Python
opencv python 图片读取与显示图片窗口未响应问题的解决
2020/04/24 Python
用python制作个视频下载器
2021/02/01 Python
毕业论文答辩开场白
2015/05/27 职场文书
又涨知识了,自律到底多重要?
2019/06/27 职场文书
浅谈JS和Nodejs中的事件驱动
2021/05/05 NodeJs
jQuery实现广告显示和隐藏动画
2021/07/04 jQuery
mysql使用 not int 子查询隐含陷阱
2022/04/12 MySQL