import ogr
import gdal
gdal.VersionInfo()
'1920'
driver = ogr.GetDriverByName('Memory')
datasource = driver.CreateDataSource('out')
lyr = datasource.CreateLayer('layername', geom_type=ogr.wkbMultiPolygon)
namedef = ogr.FieldDefn('Name', ogr.OFTString)
namedef.SetWidth(20)
lyr.CreateField(namedef)
ft1 = ogr.Feature( lyr.GetLayerDefn() )
ft2 = ft1.Clone()
ft3 = ft1.Clone()
ft1.SetField('Name', 'Test1')
ft2.SetField('Name', 'Test2')
ft3.SetField('Name', 'Test3')
lyr.CreateFeature(ft1)
lyr.CreateFeature(ft2)
lyr.CreateFeature(ft3)
0
Note how the first feature (FID=0) is exported without "id=0"
for ft in lyr:
print ft.ExportToJson()
{"geometry": null, "type": "Feature", "properties": {"Name": "Test1"}} {"geometry": null, "type": "Feature", "properties": {"Name": "Test2"}, "id": 1} {"geometry": null, "type": "Feature", "properties": {"Name": "Test3"}, "id": 2}