import shapefile
# lecture du shapefile original
r = shapefile.Reader("montest")
# création du shapefile résultant
w = shapefile.Writer(shapeType=shapefile.POLYGON)
# copie de fichiers du Reader au Writer
w.fields = list(r.fields)
# sélection des éléments
selection = []
for rec in enumerate(r.records()):
if rec[1][1].startswith("portail"):
selection.append(rec)
# Ajout dans le nouveau fichier
for rec in selection:
w._shapes.append(r.shape(rec[0]))
w.records.append(rec[1])
# création du fichier
w.save("test_portail")