Afficher les valeurs de champs d’entités d’une couche vecteur

Aujourd’hui encore une autre fonction de PyQgis. Alors nous allons voir comment afficher les valeurs des champs des entités d’une couche.

Commençons par ouvrir la couche « COMMUNE » du dossier “BD_Topo_Administratif” (suivre ce lien pour télécharger les donnés) et la console de Python dans QGis (Ctrl+Alt+P).

On va saisir maintenant ces deux lignes dans la console de Python.

  • coucheV=iface.activeLayer()
  • for entite in coucheV.getFeatures():
    • print(entite[« Nom »])

Information: remplacer « D:/BD_Topo_Administratif » par le chemin vers le dossier BD_Topo_Administratif que vous avez téléchargé.

Explication du code:

  • iface.activeLayer: sélectionner la couche active dans le panneau des couches.
  • for entite in coucheV.getFeatures():
    • For: une boucle qui permet de passer par les éléments d’un ensemble un pas un .
    • getFeatures: une fonction permettant de récupérer les informations sur les entités d’une couche.
    • for entite in coucheV.getFeatures() : si je traduit cette phrase en langage courant: passer les entités de la couche « coucheV » une par une.
  • print(entite[« Nom »]):
    • « print » veut dire « écrire » en anglais.
    • Nom: le nom d’un champ de la couche « COMMUNE »
    • print(entite[« Nom »]): on demande d’écrire la valeur du champ « Nom » pour l’entité.
  • Traduction du code:
    • Si je traduit le code en langage courant: vérifier les entités de la couche « COMMUNE » une par une et écrire la valeur du champ « Nom »

NB: pour cet exemple on a utilisé le mot « entite » pour la boucle « for » mais on aurait pu mettre n’importe quel autre nom.

Le résultat est le suivant:

Pour afficher la valeur de deux champs on saisit:

  • coucheV=iface.activeLayer()
  • for entite in coucheV.getFeatures():
    • print(entite[« Nom »]), entite[« STATUT])

NB: « STAUT » est le nom d’un autre champ de la couche « COMMUNE »

Information:

Pour que la fonction « iface.activeLayer » fonctionne, il faut sélectionner une couche dans la panneau des couches.

J’espère que cet article vous sera utile 😉

1 réflexion sur “Afficher les valeurs de champs d’entités d’une couche vecteur”

  1. Bonjour,
    Je trouve vos cours super détaillés et bien expliqués. Bravo pour ce bon boulot.
    Espérant qu’il y aura très prochainement la suite des cours pour PyQgis.

    Salutations,

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *