Stopper mon programme. - Python - Programmation
Marsh Posté le 04-01-2012 à 18:55:50
Ajoute :
import sys
au debut de ton code.
et :
sys.exit(0)
à la fin
Marsh Posté le 04-01-2012 à 18:57:24
Autre solution plus propre :
Ajoute :
if __name__ == "__main__":
au debut de ton code et indente le reste du code d'un cran.
Marsh Posté le 04-01-2012 à 19:08:56
Bonjour merci pour les réponses mais chez moi ni l'une ni l'autre ne fonctionne.
Pour lancer le programme j'utilise la fonction Run quand je suis dans IDLE.
La je vois le triangle se faire mais le prog continu sont retour à la ligne...
Si je lance le fichier directement, je saisie la valeur et la ça doit aller trop vite car je ne vois rien...
Marsh Posté le 04-01-2012 à 19:29:03
Si tu le fait tourner depuis IDLE c'est normal.
En fait ton programme est bien terminé mais l'invité de commande python intégré à IDLE ne se ferme pas à la fin de l’exécution (justement pour te permettre de voir ce que ton programme à fait).
Du coup à la fin de l’exécution tu te retrouve sur un invité de commande python dans lequel tu peu taper du code qui sera exécuté à la volée.
Pour l’exécution directe, tu peu essayer d'ajouter ça à la fin de ton code pour bloquer l’exécution (et voir ce qui s'est passé) :
raw_input("Appuyer sur entrée pour sortir !!!" )
Marsh Posté le 04-01-2012 à 19:36:13
Arf ça ne fonctionne plus du tout dans l'invite de commande...
Je double clic sur le fichier .py l'invite se lance et se ferme aussitôt.
Marsh Posté le 04-01-2012 à 20:54:15
Icedarts a écrit : Arf ça ne fonctionne plus du tout dans l'invite de commande... |
As-tu pensé a repartir de ton code d'origine avant de faire la dernière modification ?
Marsh Posté le 04-01-2012 à 21:14:58
Oui, j'ai testé toutes les possibilités en combinant tes réponses à mon code
Code :
|
ça fonctionne chez toi?
Marsh Posté le 05-01-2012 à 09:08:18
Icedarts a écrit : Oui, j'ai testé toutes les possibilités en combinant tes réponses à mon code
|
En effet ça ne fonctionne pas mais je vois qqs erreurs par exemple l'incrémentation dans ta première boucle n'est pas indentée correctement. N'oublis pas qu'en python l'indentation définis les blocs d’exécution il est donc primordiale d'avoir un code propre.
Si tu as déjà fait de l'algo tu peut faire une trace tu y verra plus clair.
Sinon il faut peut-être aussi enlevé le "é" de la chaîne "Appuyer sur entrée pour sortir !!!" car chez moi ce caractère fait planté l'interpréteur.
J'ai noté 2 erreurs (mais il y en a peut-être d'autres) :
* Icrémentation mal indentée dans la première boucle.
* La variable J n'est pas redéfinie dans les boucles while I<=H: et while I>=1: (vue que tu l'incrément/décrément il faut la réinitialiser dans la boucle parente sinon la boucle fille n'est jamais re-exécutée)
Marsh Posté le 05-08-2013 à 17:05:52
C'est pas mieux comme ca?Plus simple et sans erreur
Code :
|
Marsh Posté le 06-08-2013 à 12:40:10
yvkoe a écrit : C'est pas mieux comme ca?Plus simple et sans erreur
|
Tu pourrais arrêter de remonter tous les vieux threads de la cat s'il te plait?
Marsh Posté le 04-01-2012 à 18:25:45
Bonjour,
Je débute en python et je fais quelques exos
Dans celui que je fais actuellement il fallait un progamme pour afficher un triangle comme ceci
*
**
***
****
***
**
*
En fonction d'une hauteur que l'on demande.
Bon rien de bien compliqué a priori mais le problème c'est que mon programme affiche le triangle et passa à la ligne indéfiniment.
Je voudrais qu'il s'arrete après avoir mis la dernière *...
Voila le code:
Merci de m'indiquer comment faire.