Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Python] Premier programme

Problème...

Sujet résolu
11 novembre 2009 à 23:04:59

Bonjours,

Alors voilà j'ai eu envie de me mettre au python, j'ai donc télécharger les fichiers nécessaires.

J'ai ensuite ouvert NotePad++ (Avez vous un autre éditeur à me conseiller?) et essayer de faire mon premier script bateau :
print "Bonjours! Ca va?"

Je l'ai enregistré : test.py

Mais lorsque je double-clique sur mon fichier, la console s'ouvre et se referme de suite, je suppose donc qu'il faut mettre une ligne de commande comme en C pour attendre que l'utilisateur appui sur un touche, mais je ne sais pas comment faire...



Merci
  • Partager sur Facebook
  • Partager sur Twitter
11 novembre 2009 à 23:45:26

Citation : psychopathe


Alors voilà j'ai eu envie de me mettre au python,



Bon choix ;)



Citation : psychopathe


J'ai ensuite ouvert NotePad++ (Avez vous un autre éditeur à me conseiller?) et essayer de faire mon premier script bateau :

print "Bonjours! Ca va?"


Je l'ai enregistré : test.py

Mais lorsque je double-clique sur mon fichier, la console s'ouvre et se referme de suite, je suppose donc qu'il faut mettre une ligne de commande comme en C pour attendre que l'utilisateur appui sur un touche, mais je ne sais pas comment faire...



Il faut exécuter en console ton fichier test.py. Grosso modo, ouvre une console dos, place-toi dans le répertoire où se trouve ton fichier test.py et lance l'interpréteur Python en écrivant une commande du genre (j'écris la commande de mémoire car je ne suis pas sous Windows présentement) :

C:/python26/python test.py



Sinon, laisse tomber ton notepadmieuxmieux et utilise tout simplement IDLE qui est l'IDE par défaut de Python (Menu Démarrer > Programmes > PythonTrucTruc > IDLE ou un truc du genre). Il est pas super esthétique il plantouille parfois mais il est très adapté au débutant (et même moins débutant) parce qu'il est SIMPLE à utiliser : Keep It Simple and Sober.


  • Partager sur Facebook
  • Partager sur Twitter
11 novembre 2009 à 23:56:40

Sinon il y a Eclipse avec le plug-in Pydev qui est pas mal.
Sinon sous Windows il faut mettre le répertoire de l'interpréteur Python dans la variable d'environnement Path pour pouvoir lancer un script Python de n'importe où sur l'ordinateur en faisant python fichier.py.

EDIT : J'ai décrit ici comment faire avec Path (bien-sur tu n'a pas à mettre PyQt pour ce que tu veux faire toi hein !)
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 0:00:50

Comme ide je te conseille WING IDE (totalement personnalisable) en version EDUCATION (car la pro et la personnelle sont payante).

Tu aura un super debuggueur, tu peux le mettre en français (même si je le déconseille) et autres. quand tu aura écrit ton programme clic sur debug et non Run (qui marche mal), ainsi ton programme restera ouvert jusuq'à ce que tu le ferme.

http://www.wingware.com/downloads/wingide-101
prend le seul liens windows ( car je te suppose sous windows).
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 0:28:52

Citation : Lecureuil


Sinon sous Windows il faut mettre le répertoire de l'interpréteur Python dans la variable d'environnement Path pour pouvoir lancer un script Python de n'importe où sur l'ordinateur en faisant python fichier.py.



Exact. Il est néanmoins complètement ahurissant qu'une telle modificaion ne soit pas effectuée par l'installation de python elle-même, on se croirait à la préhistoire de l'informatique grand-public !



Citation : rorkaii

Comme ide je te conseille WING IDE (totalement personnalisable) en version EDUCATION (car la pro et la personnelle sont payante).



Chacun est libre mais personnellement je déconseille complètement ce genre d'IDE gratuit sous telle version mais payant sous une autre. Il n'y a aucune garantie de pérennité, du jour au lendemain l'éditeur peut décider que sa version gratuite devient payante, je ne dis pas ça en l'air, c'est tout ce qu'il y a de plus courant.

Pour débuter et même au-delà, le débutant doit utiliser un IDE très simple sinon il va passer son temps à chercher à savoir comment l'IDE marche et comment on fait pour avoir tel ou tel gadget et il va passer d'IDE en IDE. Si vous êtes sous Windows, IDLE et/ou un Bloc-Notes amélioré genre Notepad++ ou autre suffisent complètement pour plusieurs mois d'apprentissage.

Reste la question du débogueur. D'abord, elle ne se pose pas tout de suite, elle ne se pose que lorsque le débutant est suffisamment à l'aise pour faire de vrais programmes et dont la dimension et la complexité sont telles que qu'on ne peut pas raisonnablement les déboguer seul. Sous Windows, je ne connait pas trop, il y a effectivement Eclipse mais ça me semble être une usine à gaz quand on débute. Eric IDE est libre contient un débogueur intégré mais je ne suis pas sur que la prise en main soit facile pour un débutant.

Sous Linux, il y a winpdb qui est assez facile d'utilisation et qui pour l'instant m'a toujours suffi. Je crois qu'il existe aussi sous Windows.




  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 17:50:51

Salut,

Merci pour vos réponses!
Après quelques essais j'ai décidé d'utiliser IDLE.

Mais voilà j'ai quelques problèmes, je tente de faire quelque chose e très simple pour l'essayer mais j'ai une erreur...
Image utilisateur

De plus autre petite question, avec IDLE est-il posible par exemple d'éditer un fichier .py et de l'excuter directement?


Merci
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 17:57:43

Citation : psychopathe


Image utilisateur



Oui, parce que tu utilises Python version 3 ce que je te déconseille. Moi je désinstallerais et j'installerais Python en version 2.6. D'autres vont te dire de garder Python 3.1, ça peut aussi se défendre.


Citation : psychopathe


De plus autre petite question, avec IDLE est-il posible par exemple d'éditer un fichier .py et de l'excuter directement?



Oui, de mémoire Menu File > New File, tape ton code dans la fenêtre qui s'ouvre, sauve et exécute (touche F5). Il est aussi possible de lancer Python depuis une console DOS, il faut déjà modifier le PATH et si t'as pas l'habitude des consoles, tu risque s de trouver ça assez lourd.
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 18:00:45

Salut,

Très bien je vais installer la version 2.6 ;)

Peux tu juste m'expliquer la différence et pourquoi mon code bugger?


Merci

[EDIT] Python 2.6 installé, tous marche nickel!!
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 18:10:00

Salut !

Ton code ne marche pas car dans la version 3.1 de Python, print est devenu une fonction.
Il faut donc l'utiliser comme une fonction :

print ("Bonjour")


Et en 2.6 :
print "Bonjour"


Voilà :)
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 19:22:35

Merci beaucoup!

Sujet résolu!
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 19:23:33

Salut, pour pallier à ton problème, je te propose de mettre ceci à chaque fin de code :
raw_input("Appuyer sur entree pour continuer")

Voilà maintenant quand tu vas double-cliquer, ça ne se fermera pas.
C'est ni plus ni moins l'équivalent de
getchar();

La différence est que raw_input() attends une chaine de caractères, (un peu une scanf mais simplement pour les objets qui sont des chaînes de caractères).
Elle a un équivalent pour les chiffres qui est :
input()


@+,

Edit : là c'est résolu ;) .
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 19:25:59

Ouais, mais de 1 c'est moche, et de 2 s'il a une erreur dans son code ça ne fonctionnera pas (et ça risque d'arriver, et c'est à ce moment là qu'on a le plus besoin de l'affichage console).
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 19:28:09

Citation : Maxibolt

Ouais, mais de 1 c'est moche, et de 2 s'il a une erreur dans son code ça ne fonctionnera pas (et ça risque d'arriver, et c'est à ce moment là qu'on a le plus besoin de l'affichage console).


C'est juste un exemple, on aurait très bien pu faire tout simplement
raw_input()

Mais je vois pas de quoi tu veux parler comme erreur.
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 19:40:54

Une erreur de syntaxe par exemple. Et c'est aussi moche avec le raw_input : ça fait vraiment bidouillage pour contourner un problème alors qu'il y a une solution plus propre pour le faire.
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 19:52:52

Salut,

Merci pour ces compléments ;)
L'utilisation de IDLE à supprimé ce problème!

Mais ces informations pourront toujours mettre utile!
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 20:14:56

Bah le bidouillage, c'est de toujours aller (avec la console) dans le répertoire du .py, alors que là, une simple ligne toute courte résolve le problème.
Comme en C, tu places toujours l'instruction getchar(); et pourtant ça ne fait pas sale, enfin je trouve. Après chacun ces goûts. En plus, cette solution satisfera tous les flemards.

Par contre, je dois être faible d'esprit, parce que je vois pas en quoi raw_input() peut interférer avec les erreurs ^^ .
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 20:21:34

Essaie le code suivant :
1...
raw_input()
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 20:46:36

>>> ================================ RESTART ================================

Euh et tu l'expliques comment ?
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 21:15:01

Nan mais essaye pas dans idle, le but c'est de te montrer que le raw_input n'a aucun effet si certaines erreurs se produisent. Si de toute façon tu es dans idle, tu n'en as pas besoin vu que le shell ne se ferme pas.
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 21:36:19

Sinon il y a:
import sys
sys.stdin.readline()
Ca fait peut être moins bidouillage vu que c'est prévu pour
  • Partager sur Facebook
  • Partager sur Twitter
12 novembre 2009 à 22:55:22

Le mieux c'est de faire F5 et l'exécuter nan? (avec IDLE)
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
23 avril 2016 à 22:14:53

Bonjour , Voici la résolution pour ton programme : 

import os
print("Bonjours ! ca va ?")
os.system("pause")

Pour qu'elle ne se ferme pas tout de suite , on utilise le module "os" et on utilise sa fonction (system) pour mettre en pause.

  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
23 avril 2016 à 22:16:40

 On peut utiliser ce que j'ai dit plus tôt uniquement pour les programme où on lance directement le .py en console. Avec IDLE cela ne sert à rien avec F5 vu qu'il ne s'éteint pas automatiquement.

-
Edité par Anonyme 12 novembre 2017 à 12:43:48

  • Partager sur Facebook
  • Partager sur Twitter
17 décembre 2020 à 12:15:30

Bonjour!

Je viens de commencer python.

Et j'essaie de l'afficher dans l'idé, mais ça ne marche pas, pourquoi?

  • Partager sur Facebook
  • Partager sur Twitter
17 décembre 2020 à 12:53:25

dans le shell, le plus simple c'est de créer ton fichier via File > new file, de mettre ton code et d'enregistrer le fichier et de faire F5 dans celui-ci (ou run > run module dans le menu du fichier)

  • Partager sur Facebook
  • Partager sur Twitter
17 décembre 2020 à 13:23:52

@JusteAkodjetin Bonjour, merci de ne pas déterrer d'ancien sujet résolu, créer le votre en respectant les règles du forum à savoir ne pas poster de code sous forme d'image mais d'utiliser l'outil d'insertion de code du forum, soit le bouton code </> de la barre d'outil.

Déterrage

Citation des règles générales du forum :

Avant de poster un message, vérifiez la date du sujet dans lequel vous comptiez intervenir.

Si le dernier message sur le sujet date de plus de deux mois, mieux vaut ne pas répondre.
En effet, le déterrage d'un sujet nuit au bon fonctionnement du forum, et l'informatique pouvant grandement changer en quelques mois il n'est donc que rarement pertinent de déterrer un vieux sujet.

Au lieu de déterrer un sujet il est préférable :

  • soit de contacter directement le membre voulu par messagerie privée en cliquant sur son pseudonyme pour accéder à sa page profil, puis sur le lien "Ecrire un message"
  • soit de créer un nouveau sujet décrivant votre propre contexte
  • ne pas répondre à un déterrage et le signaler à la modération

Je ferme ce sujet. En cas de désaccord, me contacter par MP.

  • Partager sur Facebook
  • Partager sur Twitter