Découverte de l’interpréteur interactif IPython

Découverte de l’interpréteur interactif IPython

Interaction avec le shell
Bien que l’équipe d’IPyhton ne le considère pas comme un « véritable » shell système, IPython peut néamoins constituer une alternative pertinente à votre shell.
Pour lancer IPython en mode shell il vous suffit de l’exécuter avec les arguments suivants : -p pysh . Ceci execute le mode « InterpreterExec » de IPython.
Sous Windows, l’installation de IPython place deux raccourcis dans Démarrer > Programmes > IPython.
Le raccourci pysh lance IPython en mode shell.
Pour obtenir le même résultat en ligne de commande tapez : C:\Python25\python.exe C:\Python25\scripts\ipython -p sh.
L’équipe de IPython ne considère pas le mode InterpreterExec comme shell mais plutôt comme un ajout de fonctionnalités et l’apport d’un prompt customisé pour la navigation dans le système de fichiers (comme dans un shell unix). Par ailleurs le mode -pysh permet accès aux opérateurs $ et $$ pour la capture de la sortie d’une commande système.
On ne peut pas parler de shell au sens strict, bien des options manquent. Par exemple [ctrl-z] suspendra le processus de IPython et non plus celui qui « tourne » dans la console.

Exécution d’une commande shell avec l’opérateur ‘!’
Utilisons la commande système dir (pour lister le répertoire ‘c:\tmp’).
In [1]: !dir c:\tmp
Aucune reproduction, même partielle, ne peut être faite de ce site et de l’ensemble de son contenu : textes, documents et images sans l’autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu’à 3 ans de prison et jusqu’à 300 000 E de dommages et intérêts. http://eric-pommereau.developpez.com/tutoriels/introduction-ipython/
Cette commande a pour effet de lancer la commande système dir c:\tmp et d’afficher la sortie de cette commande dans la console
Si vous voulez « capturer » la sortie de votre commande shell sous forme de séquence (tableau), utilisez alors !!. Exemple d’utilisation :
In [5]: !!dir c:\tmp
La commander !!dir permet de récupérer la sortie de la commande comme une séquence Python.
Attention, l’affichage du résultat de ce type de commande (opérateur !!) peut légèrement différer des copies d’écran.
Il est également possible de récupérer le contenu du retour en utilisant le numéro de la ligne de commande préfixé par un blanc souligné (underline).
Par exemple, nous allons mettre le résultat de notre !!dir de la ligne 23 dans une variable :
monDir = _5 print monDir # Affiche le résultat du !!dir c:\tmp
On peut aussi récupérer directement le résultat d’une commande système en faisant :
maVarDir = !dir c:\tmp
Pour afficher le contenu de ce que l’on a récupéré :
In [19]: for line in maVarDir: ….: print line

Cours gratuitTélécharger le cours complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *