Python - erreur
Résolu/Fermé
A voir également:
- Python - erreur
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Citizen code python avis - Accueil - Outils
- Erreur 1001 outlook - Accueil - Bureautique
10 réponses
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
12 nov. 2008 à 14:25
12 nov. 2008 à 14:25
En python, une chaine est toujours plus grande qu'un entier. Ne me demande pas pourquoi :-/
Essaie ça:
Essaie ça:
if type(a) == str: if a.isdigit(): a = int(a) else: print "pas un nombre" return #Si dans une fonction if a < 1000: print "a est inferieur a 1000" else: print "a est superieur ou egal a 1000" if a == 2786: print "a est egal a 2786"
Hmm quand j'essaye ton code cela ne fonctionne pas, la console s'ouvre une fraction de seconde et se ferme direct, je ne sais pas pourquoi... :s
Ca marche chez toi ?
Sinon, je reposte mon code initial bien indenté (tout moche dans le premier post :p) :
En tout cas tu viens quand même de m'apprendre un truc : une chaîne de caractères est plus grande qu'un entier, je savais pas ça^^
Ca marche chez toi ?
Sinon, je reposte mon code initial bien indenté (tout moche dans le premier post :p) :
if a < 1000: print "a est inferieur a 1000" elif a >= 1000: print "a est superieur ou egal a 1000" else: print "a n'est pas un chiffre !" if a == 2786: print "a est egal a 2786"
En tout cas tu viens quand même de m'apprendre un truc : une chaîne de caractères est plus grande qu'un entier, je savais pas ça^^
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
12 nov. 2008 à 14:42
12 nov. 2008 à 14:42
Ah non, faut mettre ça dans une fonction :-)
Après au lieu de main(a) tu peux mettre main(1) ou main("prout") etc...
def main(a): if type(a) == str: if a.isdigit(): a = int(a) else: print "pas un nombre" return #Si dans une fonction if a < 1000: print "a est inferieur a 1000" else: print "a est superieur ou egal a 1000" if a == 2786: print "a est egal a 2786" main(a)
Après au lieu de main(a) tu peux mettre main(1) ou main("prout") etc...
Erf j'ai eu beau essayer et réessayer ton code, ça ne change toujours pas par rapport à l'autre. :s
Je sais vraiment pas à quoi c'est dû là... :s
Je sais vraiment pas à quoi c'est dû là... :s
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
12 nov. 2008 à 15:10
12 nov. 2008 à 15:10
Quand on lance un programme console (comme c'est le cas ici, cf: fenêtre noire), quand il se termine, la fenêtre se ferme toute seule.
Si tu veux simuler une pause à la fin (juste à appuyer sur enter), t'as qu'à rajouter ceci tout à la fin:
Si tu veux simuler une pause à la fin (juste à appuyer sur enter), t'as qu'à rajouter ceci tout à la fin:
raw_input()
Ouais ouais, ça je sais, mon raw_input est bien mis à la fin après le main(a), j'ai vérifié : pourtant la fenêtre se ferme quand même, comme quand il y a une erreur dans le code, je sais pas pourquoi... oo
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
12 nov. 2008 à 15:16
12 nov. 2008 à 15:16
Lance ton script depuis la console, tu auras le temps de voir l'erreur.
=> Démarrer / Executer / "cmd" /
cd cheminvers_ton_script_python
python tonscript.py
Il faut que python soit dans ta variable d'envirronnement PATH.
=> Démarrer / Executer / "cmd" /
cd cheminvers_ton_script_python
python tonscript.py
Il faut que python soit dans ta variable d'envirronnement PATH.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai essayé de faire comme tu dis, par contre quand tu dis :
cd cheminvers_ton_script_python
python tonscript.py
Il faut que ce chemin d'accès soit juste avant ce que je tape dans la console ?
Parce que quand j'ouvre la console, ce qui est indiqué par défaut c'est :
C:\Documents and Settings\Compaq_Propriétaire> Et là je dois taper mon code
Si je tape direct python test2.py (test2.py étant mon fichier python que j'ai fait pour tester le truc), ils me disent qu'ils ne peuvent pas ouvrir ce fichier. Et je n'arrive pas à rajouter le chemin d'accès jusqu'à mon fichier, vu que je ne peux pas modifier le chemin prédéfini... comment on fait exactement ? Oo
En tout cas merci beaucoup à toi de ta patience, j'suis un peu un noob chiant, c'est sympa de ta part de m'aider.^^
cd cheminvers_ton_script_python
python tonscript.py
Il faut que ce chemin d'accès soit juste avant ce que je tape dans la console ?
Parce que quand j'ouvre la console, ce qui est indiqué par défaut c'est :
C:\Documents and Settings\Compaq_Propriétaire> Et là je dois taper mon code
Si je tape direct python test2.py (test2.py étant mon fichier python que j'ai fait pour tester le truc), ils me disent qu'ils ne peuvent pas ouvrir ce fichier. Et je n'arrive pas à rajouter le chemin d'accès jusqu'à mon fichier, vu que je ne peux pas modifier le chemin prédéfini... comment on fait exactement ? Oo
En tout cas merci beaucoup à toi de ta patience, j'suis un peu un noob chiant, c'est sympa de ta part de m'aider.^^
Ah et quand tu dis :
Il faut que python soit dans ta variable d'envirronnement PATH.
J'ai rien compris. O_O
Que veux-tu dire ?? XD
Il faut que python soit dans ta variable d'envirronnement PATH.
J'ai rien compris. O_O
Que veux-tu dire ?? XD
Ah en fait si, j'ai déplacé mon fichier python dans le chemin d'accès prédéfini, et le code d'erreur qu'ils m'affichent est :
Donc ça voudrait dire que j'ai un problème d'indentation à la ligne 7 c'est ça ?
Je vais voir de quoi il s'agit et je te dis si j'ai des nouvelles lol^^
(en tout cas merci encore ;))
File "test2.py", line 7 else: ^ IndentationError: unindent does not match any outer indentation level
Donc ça voudrait dire que j'ai un problème d'indentation à la ligne 7 c'est ça ?
Je vais voir de quoi il s'agit et je te dis si j'ai des nouvelles lol^^
(en tout cas merci encore ;))
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
12 nov. 2008 à 15:37
12 nov. 2008 à 15:37
Oui je les ai fait à l'arrache mes indentations.
Il faut ça soit 4 espaces ou bien une tabulation pour chaque indentation.
Il faut ça soit 4 espaces ou bien une tabulation pour chaque indentation.
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
12 nov. 2008 à 15:36
12 nov. 2008 à 15:36
Alors attends.
Il est où ton script?
On va faire simple: tu le mets sur le bureau et tu tapes ça:
Dis moi ce que ça donne. Normalement il faudra encore modifier la variable PATH mais on va d'abord voir si ça marcyhe comme ça.
Il est où ton script?
On va faire simple: tu le mets sur le bureau et tu tapes ça:
cd %userprofile%\Bureau python monscript.py
Dis moi ce que ça donne. Normalement il faudra encore modifier la variable PATH mais on va d'abord voir si ça marcyhe comme ça.
Hey en fait c'est bon, j'ai refait correctement l'indentation de la ligne 7 avec la condition "else" et maintenant ça marche nikel !!
Merci beaucoup de ton aide Kilian, franchement c'est cool. ;)
Merci encore et bonne soirée ! ;);)
Waylander
Merci beaucoup de ton aide Kilian, franchement c'est cool. ;)
Merci encore et bonne soirée ! ;);)
Waylander
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
12 nov. 2008 à 15:43
12 nov. 2008 à 15:43
Bonne continuation :-)