Editing features from an existing layer

You can now add and delete features, but sometimes you only need to change an attribute value. For example, an open case status to a closed case status. In this section, you will learn how to modify attributes.

Attributes are modified by calling changeAttributeValues(). The following code changes a single feature:

scf.dataProvider().changeAttributeValues({114:{0:123,1:345,2:"ADA",3:"NEW"} })

The previous code calls changeAttributeValues() and passes a dictionary with the key being the feature id and the value being a dictionary of attributes—{id:{0:value, 1:value, n:value}}. The keys for the attributes dictionary are the field indexes. There are four fields in the features so the dictionary of attributes ...

Get Mastering Geospatial Analysis with Python now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.