driver = ogr.GetDriverByName('ESRI Shapefile')
gdal.SetConfigOption("GDAL_FILENAME_IS_UTF8", "YES") # 路径中文
gdal.SetConfigOption("SHAPE_ENCODING", "GBK") # 属性中文
daShapefile = os.path.abspath(r'dataSample\wang_point.shp')
dataSource = ogr.Open(daShapefile, 1) # 参数1可修改
daLayer = dataSource.GetLayer(0)
layerDefinition = daLayer.GetLayerDefn()
layer = dataSource.GetLayer()
a = get_point_info()
# (点名, 坐标)
for i in range(layerDefinition.GetFieldCount()):
fieldName = layerDefinition.GetFieldDefn(i).GetName()
# print(fieldName)
for k, v in a.items():
feature = ogr.Feature(layer.GetLayerDefn())
if fieldName == "wellname":
feature.SetField("wellname", v.get('point_name'))
wkt = "POINT(%f %f)" % (
float(v.get('point_x')), float(v.get('point_y')))
print(wkt)
point = ogr.CreateGeometryFromWkt(wkt)
# 使用点
feature.SetGeometry(point)
# 添加点
layer.CreateFeature(feature)
# 关闭 特征
feature = None
# 关闭数据
data_source = None
【python】在原始文件基础上增加数据
最新推荐文章于 2023-02-28 10:49:56 发布