Programmer confortablement en Python sous Windows


Python est un langage qui demande très peu pour programmer: pas d’IDE, de compilateur, de RAD ou autre. Juste un petit éditeur de texte (notepad++ fait très bien l’affaire) et la ligne de commande.

Problème, la ligne de commande est à chier sous Windows. Alors oui, vous pouvez coder dans ces conditions, mais franchement, pourquoi ne pas passer 30 minutes pour vous mettre à l’aise ?

Max est sous Mac, et je suis sous Ubuntu, mais c’est pas pour ça qu’on oublie nos racines. On a tous les deux commencé sous Windows. Perso, j’ai fait mes premiers clics de souris sur 3.1 (avant j’avais pas de souris :-)). Alors suivez le guide.

Avoir les commandes Python sous la main

Les commandes installées par des scripts Python, parfois même la commande python elle-même, ne sont pas toujours accessibles depuis la console. Assurez-vous donc d’avoir bien “c:\Python27;c:\Python27\Scripts;” à la fin de votre System PATH.

Améliorer la console

Une fois que vous avez installé Python (toujours v2.7 en 32 bits. TOUJOURS), vous avez accès au shell. Premier constat, copier / coller dans un terminal cmd.exe est aussi plaisant qu’une coloscopie un lendemain de cuite (pour vous et le praticien).

Idéalement, il faut installer un terminal alternatif. Le logiciel opensource Console2 est parfait pour ça: on peut faire du copier / coller facilement, il a des onglets, on peut régler la taille de la fenêtre…

Pour l’installer suffit de télécharger le zip, l’extraire dans “C:\Programmes Files” et faire un raccourci sur le bureau vers “C:\Program Files\Console2\Console.exe”.

Améliorer le shell Python

Le shell Python est fantastique, à l’exception de tous les autres. Donc votre premier réflexe, c’est bien entendu d’installer iPython. Sauf que Windows n’a pas readline, du coup vous n’allez pas avoir la coloration du prompt ni la completion du code. Ca craint.

C’est là que pip va encore une fois nous sauver la mise:

pip install pyreadline

Et votre shell iPython, lancé depuis Console2 est maintenant un outil presque aussi confortable à utiliser que sous Linux ou Mac avec historique, auto indent et tout le toutim. Presque, faut pas abuser non plus.

Et pour quelques outils de plus

Windows n’ayant pas de truc comme grep, installer grin va vous permettre de rapidement et confortablement chercher dans votre code. Donc, pip install grin.

Mais aller directement dans le dossier voulu depuis la ligne de commande à grand coup de cd, c’est relou. On va arranger ça.

Ouvre l’éditeur de registre (“Windows + R” puis regedit puis “enter”) et naviguez dans l’arboresence jusqu’à:

HKEY_CLASSES_ROOT\Directory\shell\

Cliquez droit dans le panel de droite, et faites “Nouveau > Clé” et appelez la clé “open_shell”. Puis cliquez sur le dossier ainsi créé, et dans le panel de droite, cliquez sur l’espèce d’icône “AB” intitulée “(Par défaut)”, et donnez lui la valeur “Ouvrir Console2 ici”.

Dans le dossier “open_shell”, créez un dossier “Command” (en faisant “Clic Droit > Nouveau > Clé”).

Donnez à “(Par défaut)” pour valeur le chemin vers Console2 suivit de ‘-d “%1″‘, par exemple pour moi:

"C:\Program Files (x86)\Console2\Console.exe" -d "%1"

Fermer l’explorateur de fichiers, et réouvrez le. Hop ! Vous avez une nouvelle entrée dans le menu du clic droit qui permet d’ouvrir Console2 dans n’importe quel dossier.

27 thoughts on “Programmer confortablement en Python sous Windows

  • roro

    Notepad++ avec TOUS ses pluggins (ceux qui ne sont plus disponibles depuis pas mal de temps). C’est pas demain que tu me proposera mieux.
    je ne voudrais pas choquer mais il éclipse “éclipse”.

  • foxmask

    AMHA il manque un bout ; comment installer Python lui même, non ?
    j’ai cru qu’iPython le “fournissait” mais en fait quand on le lance il râle parce qu’il ne le trouve point ;)

    Donc on se tourne vers ActiveState Python ?

    @sam ; ra lala on peut pas passer en douce alors ;-)

  • Flo

    Pas mal Console2 et pyreadline, je ne connaissais pas ^^.

    “Ouvre l’éditeur de registre (“Ctrl + R” puis regedit puis “enter”) et naviguez dans l’arboresence jusqu’à:”

    C’est les touches “Windows + R” non ?

  • Sam Post author

    @Foxmask: ouai je préssupose que Python est déjà installé. C’est un blog sur Python quand même, bordel ! Pas besoin d’aller voir active state, il est dispo sur le site officiel.

    @Flo: oui. Oups.

  • foxmask

    @roro le truc sympa avec notepad++ et le raccourci console2 c’est qu’avec le plugin ‘explorer’ on a encore la main sur ce raccourci contextuel ; pratique finalement :)

  • Etienne

    Pfffffff… Fenêtres maintenant… Pourquoi?? Mais pourquoi donc?? Un blog de qualité comme le votre qui en arrive a aborder un sujet aussi banal. Utiliser python sur Fenêtres!!??!

  • anucunnilinguiste

    Désolé j’ai dérivé, c’est Noël, maximum charging !

  • anucunnilinguiste

    A NoÊl, ça bande mou avec notepad ;), j’ai envie de sublimer le texte ;)

  • glickind

    sinon pour ceux qui veulent un IDE python, des consoles, des outils scientifiques, plein de modules, et qui fait le café sous Windows, il y a Python(x,y)

  • Kontre

    J’allais parler de Python(x,y) aussi pour les scientifiques, qui contient notamment l’éditeur Spyder qui est très bien fichu (grosso modo, c’est l’interface Matlab pour Python).
    Mais ces astuces pour la console sont bien complémentaires, génial !

  • Guts

    Hola,

    Vraiment pratique ce petit article.

    Python(x,y) est vraiment un bon IDE mais assez lourd et très orienté vers les libs scientifiques.

    Perso, j’utilise soit SublimeText2, soit Notepad++ (avec ses joulis plugins) pour les développements ou éditions avec plusieurs langages en jeu. Pour du pur python, je vis un idylle avec PyScripter (https://code.google.com/p/pyscripter/).

    À noter que pour ceux qui ne parviennent pas à maîtriser les joies du Path windows, Christoph Gohlke propose un bon paquet de librairies python sous forme d’installeurs windows : http://www.lfd.uci.edu/~gohlke/pythonlibs/

    ++

    PS : gaffe à tes fesses, petit trombone diffamant sur mon com’ “trollesque”, je connais plein de copines punaises !

  • Sam Post author

    Le dernier lien saponifie du chihuahua matriarcal dans un vortex.

  • Guts

    Histoire que l’article soit “dev-newbie-friendly”, j’ajouterais les deux petits pas qui manquent souvent aux débutants :
    – Propriétés systèmes (Touche Windows + Pause)
    – Onglet avancé > Variables d’environnement
    – partie du bas “variables systèmes” > sélectionner “path” et cliquer sur modifier
    – ajouter “c:\Python27;c:\Python27\Scripts;” en fin de ligne

    Pour que tout ne parte pas en couille, Windows aime redémarrer. Faites lui plaisir.

  • Daarkmoon

    Une fois que vous avez installé Python (toujours v2.7 en 32 bits. TOUJOURS)

    c’est quoi le problème avec python 64bits ?

  • fpp

    A mi-chemin entre l’éditeur avancé et l’IDE basique, il y a SciTe qui est très bien avec Python, et qui permet de passer à Linux sans changer d’outils…

  • Guts

    Yep,

    Le lien pour télécharger python pointe vers la version 2.7.3 et tant qu’à faire autant qu’il dirige vers la toute dernière (actuellement la 2.7.5). Il doit bien y avoir un lien générique vers la dernière version, non (pas trouvé) ?

  • da

    Hé ben… chiant…

    Ça fout un bordel sans nom dans ce qui était déjà pas facile

Comments are closed.

Des questions Python sans rapport avec l'article ? Posez-les sur IndexError.