Bonjour à tous.
J'ai écrit un script python dans l'editeur qedit et il porte extension .py. ce script consiste en une fonction (def ...), mon souhait est de pouvoir utiliser cette fonction depuis la console. Comment?
Merci infiniment.
Bonjour à tous.
J'ai écrit un script python dans l'editeur qedit et il porte extension .py. ce script consiste en une fonction (def ...), mon souhait est de pouvoir utiliser cette fonction depuis la console. Comment?
Merci infiniment.
Salut,
Le plus simple:
Évidemment, cela implique que ce code contient le nécessaire à son exécution. Donc la fonction sera appelée de l'intérieur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 python3 monscript.py
Sinon, tu peux utiliser l'interpréteur interactif:
Je simplifie à défaut de connaître ton code, mais, en gros, c'est aussi simple que cela.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 python3 Python 3.2.3 (default, Jun 18 2015, 21:46:42) [GCC 4.6.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import monscript >>> monscript.ma_fonction()
Bonjour, désolé pour le déterrage de post, mais j'ai un problème similaire.
J'utilise QPython pour Android.
Mon but est assez simple. J'aimerai définir une fonction f(x) qui renvoie 2*x
Dans la console, si je tape def f(x) : return 2*x, tout se passe bien.
Mon but maintenant est de l'écrire dans l'éditeur, puis de l'appeler depuis la console (afin de calculer f(2), f(5), ... sans repasser par l'éditeur).
Je crée donc un nouveau script test.py qui contient le même code ...
Si j'appuie sur le bouton Run, ça m'ouvre une console mais je ne peux pas écrire f(2) ...
Si quelqu'un peut m'aider ...
Salut,
Une fonction ne s'exécute pas si elle n'a pas été appelée.
Donc un script tel que:
ne sert à rien, il n'y a aucune raison pour que la foncion f s'exécute.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 def f(x): return 2 * x
Par contre si tu enregistre ce code:
tu pourras constater que cela a plus de sens.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 def f(x): return 2 * x print(f(5))
Mais, évidemment, tu aimerais pouvoir choisir toi-même l'argument à passer à la fontion.
Pour cela il te faudra lancer le code toi-même dans un terminal avec l'argument que tu veux et ajouter à ton code la saisie de cet argument.
Si tu as une erreur, copie-colle le message complet ici.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 import sys def f(x): return 2 * x print(f(int(sys.argv[1])))
Bonsoir,
Déjà merci pour cette réponse si précise et si rapide.
Donc, bien sûr pas de soucis quand je fais appel à la fonction dans mon fichier.
En fait je cherchais une solution, qui ressemblerait à ce que propose repl.it : un éditeur d'un côté, on compile et on exécute, et une fenêtre de l'autre côté qui permet d'appeler les fonctions contenues dans le code.
Mon but est d'utiliser en classe de Seconde (je suis prof de Maths) les téléphones pour coder en Python, de manière aussi simple que les élèves programmaient avec leur calculatrice.
Le plus simple dans mon cas est peut être d'utiliser
Le problème c'est que pour essayer le programme avec un autre x, sous qpython, il faut fermer la fenêtre, et recompiler le programme. Alors qu'avec les calculatrices, il suffit d'appuyer une nouvelle fois sur Enter ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 nombre=int(input("Entrez x:")) def f(x): return 2 * x print(f(nombre))
Mais bon, je pense que c'est la solution la plus simple ... Il reste ensuite la possibilité de taper le code directement dans la Console, mais ils ne gardent pas de trace de leur programme.
Pas obligé:
Donc en tapant "q" on quitte le programme.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 def f(x): return 2 * x while 1: nombre = input("Entrez x:") if x in ("q", "Q"): sys.exit() try: n = int(nombre) except ValueError: print("Entrez une valeur numérique !") continue print(f(n))
Partager