Gnu/Linux Magazine HS 95

Mémo Python - Saison 2

59 nouvelles recettes pour accélérer vos développements !

Plus de détails

12,90 € TTC

 
SOMMAIRE :

DONNÉES : Manipulez et représentez vos données

p.10 Arrondir un nombre à la dizaine supérieure ou inférieure
p.11 Définir des constantes « protégées »
p.12 Convertir une chaîne de caractères représentant un tuple en tuple
p.13 Créer une dataframe depuis un dictionnaire dont les clés sont des tuples
p.15 Filtrer les données d'une liste de dictionnaires en fonction d'un critère
p.16 Manipuler des octets
p.17 Convertir un octet en chaîne de 0 et de 1
p.18 Nettoyer des données en sortie de programme
p.19 Demander la saisie d'un mot de passe
p.21 Découper une chaîne de caractères en sous-chaînes de taille fixe
p.23 Créer une interface CLI avec autocomplétion
p.27 Compter le nombre d'occurrences des lettres d'une chaîne de caractères
p.28 Formater des chaînes de caractères
p.29 Grouper des chaînes de caractères par taille
p.30 Effectuer des opérations sur les colonnes d'une DataFrame Pandas
p.32 Combiner les colonnes d'une DataFrame Pandas
p.35 Nettoyer des données CSV avec Pandas
p.37 Effectuer des tests à la chaîne
p.38 Utiliser l'opérateur * pour récupérer les données d'une liste
p.39 Parcourir plusieurs listes avec une seule boucle
p.40 Trier une liste d'entiers lue sous forme de chaîne de caractères
p.41 Rafraîchir une fenêtre graphique Pygame

OUTILS : Utilisez les bons outils

p.44 Compiler Python
p.47 Afficher de manière lisible une structure complexe
p.49 Utiliser une classe Java dans un script Python
p.50 Documenter un projet avec Sphinx
p.56 Utiliser une fonction C dans du Python
p.59 Utiliser une fonction Fortran dans du Python
p.60 Compiler un programme Python en Bytecode
p.61 Vérifier la conformité PEP 8 d'un code
p.63 Gérer les environnements virtuels avec Pipenv
p.67 Étudier l'impact d'une modification en désassemblant du code
p.68 Conserver des données de manière persistante
p.70 Présenter du code Python avec Jupyter
p.74 Optimiser le temps d'exécution d'une fonction avec un cache
p.75 Effectuer des installations de modules sur différentes versions de Python
p.76 Visualiser les portions de code les plus lentes

RÉSEAU : Exploitez la programmation réseau

p.80 Envoyer des SMS
p.83 Recevoir et analyser des SMS
p.85 Envoyer des e-mails avec Gmail
p.87 Accéder aux évènements d'un agenda Google Calendar
p.91 Rechercher et analyser des données sur le Web et générer un document CSV
p.94 Récolter des données web avec Scrapy p.98 Remplir un formulaire et effectuer des clics automatiques sur des pages web

STRUCTURE : Organisez votre code

p.102 Réduire la consommation mémoire d'un code
p.104 Composer des décorateurs
p.106 Créer un opérateur de classe
p.107 Créer un Context Manager
p.108 Appliquer le principe du slicing à un générateur p.109 Créer une boucle de type do... while
p.110 Utiliser une structure switch p.111 Utiliser un compteur sans avoir à gérer une variable
p.112 Utiliser le design pattern « Chaîne de responsabilité »
p.114 Utiliser le design pattern « Mémento »
p.117 Utiliser le Design Pattern « Adapter »
p.119 Utiliser le Design Pattern « Facade »
p.120 Utiliser le Design Pattern « Strategy »
p.122 Utiliser le Design Pattern « Factory Method »
p.124 Explorer le contenu d'une classe

Préface :

Vous l’attendiez et il est de retour : un nouveau hors-série au format « mémo » sur Python ! Dans cette saison 2, vous pourrez encore trouver une présentation synthétique de différents problèmes accompagnés de leurs solutions et, pour ceux d’entre vous qui souhaiteraient aller plus loin, de leurs explications.

Pour rappel, comme il est bien entendu impossible de recenser tous les problèmes possibles, ces « recettes » nécessiteront parfois des adaptations plus ou moins importantes, mais elles vous permettront de partir dans la bonne direction, de ne pas perdre inutilement du temps en testant une dizaine de solutions. Vous vous demandez comment implémenter le design pattern « Memento » ? Ne cherchez plus : prenez la recette que nous vous proposons et adaptez-la à votre programme !

Ce mémo comporte moins de recettes que le premier, car j’ai fait le choix d’aborder des problèmes légèrement plus complexes et qui nécessitent par voie de fait plus de code et des explications plus longues. Les recettes sont toujours classées en grandes familles : 

  • « Manipulez et représentez vos données » qui regroupe les problèmes liés à l’utilisation de données : stockage, conversion, opérations, etc. ; 
  • « Utilisez les bons outils » dans lequel vous trouverez comment travailler avec d’autres langages que Python tout en restant dans Python, et comment améliorer la qualité de votre code, fournir une documentation technique soignée, etc. ; 
  • « Exploitez la programmation réseau » vous permettra de travailler avec le Web, les services Google et les SMS ; 
  • et, enfin, « Organisez votre code » vous montrera différentes techniques permettant de structurer efficacement votre code et notamment comment implémenter un certain nombre de design patterns ou patrons de conception.

L’objectif de ce hors-série reste le même que pour le premier « Mémo Python » : vous aider à développer dans ce formidable langage qu’est Python et vous permettre de gagner du temps. Donc n’attendez plus, retournez coder et gardez ce guide à porter de main, il y a de fortes chances pour qu’il vous soit très utile... en tout cas c’est ce que nous souhaitons !

Tristan Colombo  

A propos du magazine
Logo

Le magazine de référence technique pour les développeurs et les administrateurs sur systèmes UNIX, open source & embarqué !

Pionnier dans son domaine, GNU/Linux Magazine est depuis 1998 une véritable référence technique pour pour tous les développeurs et administrateurs sur systèmes Unix, open source et embarqués. Le premier magazine français 100 % Linux se démarque grâce à une ligne rédactionnelle résolument technique et pédagogique. Chaque mois de nombreux thèmes sont abordés permettant de toucher à différents domaines de l’informatique, que ce soit de l’intelligence artificielle, de la sécurité, de l’embarqué, du système/réseau ou du hack.

Nouveaux produits