#1 Tue 08 April 2025 17:14
- Marcopololo
- Participant actif
- Lieu: Etival Clairefontaine
- Date d'inscription: 23 Nov 2021
- Messages: 109
QGIS: SetText et valeur nulle
Bonjour,
J'ai une fonction setText dans laquelle j'affiche des attributs de ma table d'attributs. Mais dans certains cas les valeurs n'existent pas et bien sur j'ai une erreur. Sachant que j'utilise un QTextEdit.
En Html on peut utiliser array pour n'afficher que les valeurs existantes, mais en python je ne trouve pas d'équivalent, ou je n'ai pas vu.
Code:
self.dlg.plantation.setText(e['liste_arbres_Plant1'] + "\n" + e['liste_arbres_Plant2'] + "\n" + e['liste_arbres_Plant3'] + "\n" + e['liste_arbres_Plant4'])
Merci de votre aide
Marcopololo
Hors ligne
#2 Tue 08 April 2025 17:31
- YoLecomte
- Participant assidu
- Lieu: Epinal
- Date d'inscription: 7 Jul 2015
- Messages: 275
Re: QGIS: SetText et valeur nulle
Bonjour,
Vous pouvez définir une fonction qui s'occupe de créer la chaine de caractère a afficher et la passer à setText comme ceci:
Code:
def build_liste_arbres(e): fields = [ 'liste_arbres_Plant1', 'liste_arbres_Plant2', 'liste_arbres_Plant3', 'liste_arbres_Plant4' ] to_str = "\n".join([e[field] for field in fields if e[field]]) if not to_str: return 'Aucun arbre ici...' return to_str e1 = { 'liste_arbres_Plant1': None, 'liste_arbres_Plant2': None, 'liste_arbres_Plant3': None, 'liste_arbres_Plant4': None, } e2 = { 'liste_arbres_Plant1': 'Acacia', 'liste_arbres_Plant2': 'Chêne', 'liste_arbres_Plant3': None, 'liste_arbres_Plant4': 'Sapin', } print(build_liste_arbres(e1)) print(build_liste_arbres(e2))
Hors ligne
#3 Thu 10 April 2025 09:37
- Marcopololo
- Participant actif
- Lieu: Etival Clairefontaine
- Date d'inscription: 23 Nov 2021
- Messages: 109
Re: QGIS: SetText et valeur nulle
Merci
Hors ligne