récupérer variable à la sortie du script python
Bonjour,
J'utilise un script python dans le logiciel FME pour préparer les traitements qui seront effectués dans ce dernier.
Lorsque le script est simple par exemple :
var = 'test'
return var
Le programme récupère bien 'var' et poursuit les traitements qu'il doit effectuer en fonction de cette variable.
En revanche dans un cadre plus élaboré, je ne parviens pas à récupérer ma variable de retour et à poursuivre les traitements.
Mon code se présente sous la forme suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| import psycopg2
import fmeobjects
import sys
import PyQt4
import signal
from PyQt4 import QtCore, QtGui
class Example(QtGui.QWidget):
def __init__(self):
super(Example, self).__init__()
self.initUI()
def initUI(self):
*****
self.show()
def selection(self):
****
def valide(self):
****
def traitement(self, selection):
return resultat #Fonctionne pas
****
def main():
app = QtGui.QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
if __name__ == '__main__':
main() |
J'ai essayé sys.exit(resultat), return resultat dans la fonction main() sans succès :(
Pourriez vous m'aider à comprendre pourquoi je ne parviens pas à récupérer ma variable ?
Merci d'avance.
Voici le lien de la discussion d'origine sur georezo :
http://georezo.net/forum/viewtopic.php?id=86049
edit :
Finalemement, il n'y avait pas de difficulté, j'ai défini ma variable result en global et j'ai écrit le "return result" à la toute fin du script en dehors de la classe et des fonctions.