I am getting the error for following code to add a new field to a shapefile table.
from osgeo import ogr # Open a Shapefile, and get field names source = ogr.Open('my.shp', 1) layer = source.GetLayer() layer_defn = layer.GetLayerDefn() field_names = [layer_defn.GetFieldDefn(i).GetName() for i in range(layer_defn.GetFieldCount())] print len(field_names), 'MYFLD' in field_names # Add a new field new_field = ogr.FieldDefn('MYFLD', ogr.OFTInteger) layer.CreateField(new_field) # Close the Shapefile source = None
Error is as following:
layer = source.GetLayer()
AttributeError: 'NoneType' object has no attribute 'GetLayer'