pyQGIS snippets / cheat sheet

How to print out layer fields names?
layer = iface.activeLayer()
for field in layer.fields():
    print(field.name())
How to print out given field's values?
layer = iface.activeLayer()
for feature in layer.getFeatures():
    print(feature['<field_name>'])
How to create layer from selected features?
layer = iface.activeLayer()
selection_layer = layer.materialize(QgsFeatureRequest().setFilterFids(layer.selectedFeatureIds()))
QgsProject.instance().addMapLayer(selection_layer)