I'm pretty new to using the console and still have a lot to learn so this might come across as a really stupid question.
I imputed this code into the console:
counter = 0 # Set the path for the output file output_file = open(r'/Users/admin/Desktop/TestFlood.txt', 'wb') iter_layer = QgsProject.instance().mapLayersByName('test_flood') layers = QgsProject.instance().mapLayers().values() for point in iter_layer.getFeatures(): counter += 1 print(counter) for layer in layers: if layer.name() != iter_layer.name(): for feature in layer.getFeatures(): if (feature.geometry().contains(point.geometry())): msgout = '%s, %s \n' % (point["pcds"], layer.name()) unicode_message = msgout.encode('utf-8') output_file.write(unicode_message) print('Finished') output_file.close()
I am trying to run a few thousand points through each of the layers I have created and get an output on a text file that I can use to analyze further. And added a counter to see how long it takes as when I first ran this it took around a week. However, when I run it this is what I get:
Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/code.py", line 91, in runcode exec(code, self.locals) File "input", line 1, in 'module' File "string", line 31, in 'module' KeyError: 'pcds'
This is probably very simple to fix but I have searched online for a while and couldn't find anything to help.
I am using QGIS 3.4.9-Madeira and my OS is MacOS 10.14.6 Mojave.