Découvrir la data science avec Python

Utiliser les commandes magiques

Testez gratuitement nos 1304 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Dans cette vidéo, profitez du potentiel des commandes magiques d'IPython qui sont des commandes spécifiques commençant par le signe pourcent.
08:17

Transcription

Abordons maintenant les commandes magiques. Ce sont des commandes spécifiques à IPython mais pas des commandes Python. Donc, ce sont des commandes qu'on va pouvoir appeler qui vont faire un effet purement IPython et qui ne seront pas des commandes interprétées par le langage Python. Les commandes magiques commencent par un « % ». Je vais vous donner un exemple. Si je suis dans un Shell Bash sur Linux et que je veux savoir dans quel répertoire je me trouve je vais faire quelque chose comme « pwd ». Ici c'est une commande magique et les commandes magiques sont préfixées par un « % », donc si je fais « %pwd » il me retourne un output qui est le répertoire courant. Voilà une commande magique qui me retourne une information. J'ai d'autres commandes magiques qui effectuent une action. Même chose, si je suis dans un Shell Bash sous Linux pour aller dans le répertoire courant ou dans un répertoire particulier, je fais un « CD ». « CD » sans rien c'est le répertoire de l'utilisateur. Eh bien c'est également une commande magique « %CD » et vous voyez que c'est pas un output ici. Il me retourne simplement le résultat de la commande. Il a fait quelque chose, il est allé dans ce répertoire. Le fait est qu'il s'y trouvait déjà mais ce n'est pas un problème. Donc, on se trouve maintenant dans le répertoire courant. Donc, les commandes magiques commencent par « % ». Il y a deux types de commandes magiques. Des commandes magiques dites de ligne qui vont s'exécuter sur la ligne qu'on vient de saisir. Et puis on a des commandes magiques de cellule, ou on pourrait dire de bloc, qui vont s'exécuter sur un bloc de commandes, donc plusieurs lignes, évidemment. Ça peut être utile dans certaines commandes par exemple celle qui va donner le temps d'exécution de quelque chose. Je vais vous montrer ça. Mais restons sur les commandes de ligne. Alors qu'avons-nous à disposition ? On a par exemple très simplement la commande « % » magique qui me donne une sorte de fichier, de manuel à lire sur les commandes magiques. Voyez, je peux descendre, je peux faire un « q » pour quitter mais vous voyez que j'ai la liste de toutes mes commandes magiques. Je vais avoir une commande magique très pratique qui est « hist » ou « history ». Mais c'est la même chose, donc « hist » est un peu plus court qui va donner, comme son nom l'indique, l'historique des commandes saisies. Sur les commandes magiques il peut y avoir des options de commande par exemple, mon « hist », je peux lui demander les output également avec un « tiret haut » ou un « moins haut », au choix. Et vous voyez par exemple que là j'ai un « pwd » avec le résultat également. Donc j'ai les input et les output. Je peux utiliser « hist » avec un « moins g » c'est un historique global. Si je fais « hist » simplement comme ceci j'ai l'historique de ma session. Si je fais un « hist moins g » j'ai l'historique également accumulé de ce qu'il y a dans un fichier de logs qui sont aussi les historiques des autres sessions. C'est pratique si vous avez quitté votre console et vous la réouvrez vous avez un« hist moins g » et toutes les commandes. L'avantage également c'est qu'elles sont numérotées. À ce moment-là, vous vous souvenez, vous pouvez y faire référence par exemple la variable « souligné i » pour input numéro 24 Eh bien ça me donne bien « hist ». Et c'est ça, on est d'accord. Vous vous souvenez que j'ai fait un cls ? Eh bien finalement qu'est-ce qu'un cls ? C'est une variable magique. Mais alors pourquoi j'ai pu faire ça ? Ou pourquoi est-ce que je peux faire ça d'ailleurs ? Ou ça. Je vous ai dit une bêtise, j'ai pas besoin de mettre des « % ». Vous n'avez probablement pas besoin de mettre des « % » dans la plupart des commandes si vous voulez parce que vous êtes dans un mode qui s'appelle automagic. Il y a une commande magique qui s'appelle automagic qui détermine si on est à on ou à off. Automagic est activée par défaut ce qui fait que très simplement quand IPython voit cette commande il va chercher, si on est en mode automagic, dans la liste des commandes magiques. S'il trouve un « %pwd » il comprend que c'est cette commande que je veux appeler et il la déclenche. C'est tout simple. D'autres commandes magiques utiles : « %run » et le nom d'un script Python. Donc, on est en train d'exécuter un script Python dans la console. Vous pouvez également faire un « %prun ». Vous exécutez le script Python et vous lancez un profiler « cprofile » qui va permettre d'ajouter aussi des informations après qui seront retournées après l'exécution du profiling de l'éxecution du script. Vous pouvez utiliser une commande qui s'appelle « %time » ou « %timeit », qui vont vous donner le temps d'exécution d'une commande. La différence, si je fais ça, par exemple on va faire quelque chose d'un peu plus compliqué, par exemple ça, c'est pas terrible quand même, Eh bien on va me dire voilà quel est le temps d'exécution et vous voyez ici on est en nanosecondes. donc on a ici le temps CPU en nanosecondes. Alors je vous parlais de cell magic command c'est-à-dire de commandes de bloc. Eh bien je peux faire en sorte que mon « time » soit une commande de bloc « double % » ensuite ça divisé par ça ensuite ça divisé par ça et maintenant je laisse la ligne vide et j'ai un Wall Time de 0 nanoseconde donc ça fait peu, je laisse la ligne vide et c'est le bloc complet qui va être analysé. Il faut dire que « %time » donne vraiment des choses très très basiques. On va plutôt utiliser « %timeit », avec -je prends n'importe quoi, voilà, pour faire un petit peu plus compliqué bien qu'on est sur des entiers ce n'est pas le processeur qui va beaucoup travailler- et « %timeit » va faire quelque chose d'un peu plus intelligent c'est-à-dire soit je lui donne une boucle, quelque chose qui va être exécuté plusieurs fois, et il va me donner la moyenne, soit je lui donne ici une seule commande et il va lui-même générer un certain nombre d'exécutions pour pouvoir faire une moyenne et me donner des chiffres un peu plus sérieux que « %time ». Donc là ça va trainer un petit peu. Il m'a dit: « j'ai fait autant de boucles et la meilleure des trois c'est 22 nanosecondes par boucle ». Donc voilà ça me donne une bien meilleure estimation des performances de quelque chose. Finalement, dernière commande utile, il y en a d'autres, mais une commande assez souvent utilisée, c'est une commande de coller. Alors, par exemple,j'ai une commande -voilà je fait un clic droit- je vais mettre ça dans mon presse-papier et puis je pourrais faire comme ça, clic droit pour faire un « CTRL+V » ou quelque chose comme ça c'est « CTRL+SHIFT+V » en général dans cet environnement donc « CTRL+SHIFT+V » pour avoir le collage, mais admettons que j'ai un certain nombre de lignes de code Python -j'ai peut-être un script qui fait 10 lignes- et puis je voudrais que ce soit correctement collé eh bien j'ai une commande qui s'appelle « %paste ». Alors, vous avez vu, j'ai fait un petit « Tab », vous avez un pastebin, qui va permettre de se connecter à GitHub, de faire un pastebin et de récupérer le lien au cas où mais j'ai ma commande « %paste » qui fait exactement ça, qui prend toutes mes lignes, « End pasted text » donc qui prend vraiment un bloc et qui exécute le bloc Python. Vous pouvez d'ailleurs utiliser quelque chose d'encore plus interactif qui s'appelle « %cpaste » et vous pouvez ici commencer à coller des choses différentes et puis vous mettez un double tiret à la fin pour arrêter, donc par exemple je vais faire « CTRL+SHIFT+V » pour ça, voilà, je fais un double tiret, ça me permetde saisir un certain nombre de commandes et puis voilà, j'ai toujours le même output donc « %paste » et « %cpaste » sont très pratiques pour récupérer du code déjà tout fait et l'importer. Cela dit vous, avez deux façons, soit vous faites des scripts et vous faites un run, soit effectivement vous avez une manière plus interactive, vous avez déjà des bouts de code et vous les intégrez avec le « %paste ».

Découvrir la data science avec Python

Prenez en main les outils utilisés pour la data science avec Python, d'un point de vue technique. Pour cela, explorez les deux bibliothèques importantes, NumPy et Pandas.

2h16 (25 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :25 août 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !