मैं एक फीचर की एक विशेषता को अद्यतन करना चाहूंगा। हालाँकि, मैं फीचर ऑब्जेक्ट का उपयोग करके इसे अपडेट करना नहीं जानता। मुझे इसे अपडेट करने के लिए डेटा प्रदाता का उपयोग करना होगा।
layers = QgsMapLayerRegistry.instance().mapLayersByName('my_line')
layer = layers[0]
dp = layer.dataProvider()
it = dp.getFeatures()
for i in range(0, dp.featureCount()):
feat = it.next()
attrs = { 2 : 30 }
layer.dataProvider().changeAttributeValues({ feat.id() : attrs })
क्या मैं QgsFeature
ऑब्जेक्ट का उपयोग करके किसी विशेषता का मान बदल सकता हूं ?
इसके अलावा, क्या इट्रेटर ऑब्जेक्ट का उपयोग करके लूप करना संभव है?
my_index = layer.fieldNameIndex("my_field_name")
सूचकांक प्राप्त करने के लिए उपयोग करें।