2009-08-04 11 views
3

J'ai un programme C# externe qui exécute un script Python en utilisant la classe Process.Récupération de la valeur de retour d'un script Python

Mon script retourne un code numérique et je veux le récupérer dans mon programme C#. Est-ce possible?

Le problème est que j'obtiens le code retour de python.exe au lieu du code renvoyé par mon script. (. Par exemple, 3)

Répondre

8

L'interprète ne retourne pas la valeur au sommet de la pile de Python, sauf si vous faites ceci:

if __name__ == "__main__": 
    sys.exit(main()) 

ou si vous effectuez un appel à sys.exit ailleurs.

Here's a lot more documentation on this issue.

+0

+1 pour être beaucoup mieux que le mien. – JAB

+0

2.7.9 documentation pour ['sys.exit()'] (https://docs.python.org/2.7/library/sys.html?highlight=sys.exit#sys.exit). – DavidRR

Questions connexes