Suite

Code partagé des scripts de traitement QGIS


Je suis sur une machine Windows 7 avec QGIS 2.8 installé via OSGeo4W. Je développe plusieurs scripts de traitement qui utilisent quelques morceaux de code courants. Plutôt que de conserver le code dans chaque fichier de script individuel, j'aimerais importer les fonctions communes dans chaque script.

Ces scripts peuvent être partagés entre plusieurs utilisateurs, j'aimerais donc éviter d'avoir du code stocké à plusieurs endroits. Ma pensée initiale était de sauvegarder _foo.py dans le dossier .qgis2processingscripts sur mon compte utilisateur, puis de l'importer via

importer _foo

Cependant, Processing ne définit pas le répertoire des scripts comme le CWD de l'interpréteur python afin que le script de l'utilitaire ne soit pas récupéré.

Existe-t-il un moyen d'atteindre mon objectif sans en faire un plug-in QGIS à part entière ?


Le script peut être placé dans n'importe quel chemin de la variable d'environnement PYTHONPATH.

Si certains des emplacements par défaut ne répondent pas à vos besoins, vous pouvez apporter des modifications à PYTHONPATH si nécessaire.

Dans QGIS, vous pouvez ajouter ou ajouter la variable PYTHONPATH.

VérifiezSystèmeonglet dans leParamètres > Optionsla fenêtre.

Cochez à côtéUtiliser des variables personnalisées (redémarrage requis - inclure des séparateurs)

Puis cliqueAjouter.

SousAppliquervous pouvez changer cela enajouterou alorsajouter.

Ensuite, réglez leVariablecommeCHEMIN PYTHONet leValeurau chemin de vos scripts python.


Si vous souhaitez mettre le script python dans un dossier qui existe déjà, vous pouvez ouvrir la console python dans qgis et taper

importer sys sys.path

Vous pouvez choisir l'un des répertoires répertoriés.


Voir la vidéo: QGIS Python Getting ready to use the QGIS Python API Version (Octobre 2021).