Linux Pratique Hors-série N°
Numéro
23

La programmation avec Python

Temporalité
Février/Mars 2012
Image v3
La programmation avec Python
Article mis en avant

Résumé
Vous avez entendu parler de Python depuis de nombreuses années maintenant... mais vous ne connaissez toujours rien de ce langage ? Pourquoi un nouveau langage est-il apparu, à quels usages est-il destiné et surtout qu'est-ce que vous allez pouvoir en faire ? Dans cet article ouvrant ce hors-série consacré à Python, ni code, ni syntaxe, uniquement une présentation des fondamentaux historiques et philosophiques de Python.

Dans ce numéro...


Après une introduction purement théorique, passons à la pratique et voyons quelle est la syntaxe de base utilisée en Python. Cet article constitue une introduction généraliste à la syntaxe de Python. Nous aborderons de nombreux sujets sans rentrer dans les détails, ces détails étant abordés dans les articles suivants. Nous commencerons par configurer un environnement de développement en installant des versions de Python (au moins un Python 2.x et un Python 3.x) et un éditeur de code avant d'appréhender les commandes Python en partant du type des données jusqu'à la structure d'un programme complet. Mais pour débuter, nous avons besoin de loger un Python dans notre ordinateur...
Cet article constitue un approfondissement sur le fonctionnement des listes, des tuples et des dictionnaires. Nous apporterons une attention particulière à la technique du « slicing » ou « découpage en tranches ».
Un code sans fonctions comporte beaucoup trop de redondances, de copier/coller. Les fonctions permettent d'écrire des programmes beaucoup plus synthétiques et modulaires. Comment écrire des fonctions en Python et comment les organiser en bibliothèques ? C'est ce que nous allons voir dans cet article.
C'est une problématique que l'on retrouve fréquemment : comment analyser des chaînes de caractères ? Comment vérifier qu'elles correspondent au format attendu ? Comment récupérer des informations précises mais non connues à l'avance ? Les expressions régulières sont là pour répondre à ce problème.
Dans les systèmes Linux, il est d'usage de pouvoir utiliser une application en mode commande, même si cette dernière dispose d'une interface graphique. Ce mécanisme permet aux utilisateurs confirmés de s'affranchir de la lourdeur inhérente aux interfaces graphiques (déplacements et clics souris répétés) au profit d'une utilisation certes moins élégante visuellement, mais plus pratique et rapide. Parfois l'interface graphique ne représente aucun intérêt et ne sera pas développée. Dans tous les cas, il va falloir être capable de lire les arguments de la ligne de commandes.
Les fichiers représentent un élément essentiel du développement informatique, permettant de conserver et retrouver des informations. Tout langage permet d'accéder à des fichiers et Python ne déroge pas à la règle...
De nos jours, tout le monde connaît, au moins de nom, le format XML. Ce format de fichiers permet de décrire des données de manière structurée et il peut être utilisé de manière très simple en Python. Je vous propose dans cet article de découvrir ou de redécouvrir de façon sommaire le format XML et la manière d'analyser un fichier XML pour en retirer des informations à l'aide de XPath. Nous pourrons ensuite utiliser ces techniques depuis Python grâce à la librairie lxml.
Dans cet article, nous allons découvrir comment manipuler les fichiers compressés de type gzip/bzip2 ainsi que les archives de type zip/tar.
En Python, tout est objet : lorsque vous manipulez une simple variable, il s'agit en fait d'un objet. Ce langage intègre donc naturellement la possibilité de développer une architecture orientée objet. Dans cette première partie, je vous présente la théorie de la programmation orientée objet vue depuis Python.
Après avoir vu (rapidement !) la théorie de la POO, passons à la mise en pratique.Dans la première partie de cet article nous ne nous sommes attachés qu'à la compréhension d'un mécanisme général. Python est un langage très simple, mais également très complexe lorsque l'on veut vraiment savoir ce que l'on fait. J'ai l'habitude de dire que c'est un langage de « détails » : si vous voulez vraiment programmer en Python, il faudra avoir vu au moins une fois ces « détails » de syntaxe pour ne pas passer des heures par la suite à rechercher l'origine d'un bug... Qui n'en est finalement pas un, mais plutôt une incompréhension du langage. La POO en Python n'échappe pas à cette règle : prenez du temps pour bien comprendre ce qui se passe en machine. En plus, Python fournit un outil formidable pour ce genre de tests : l'interpréteur interactif !
Justement qualifié par la devise « batteries included », le langage Python offre une large boîte à outils permettant de créer et d'envoyer facilement des e-mails. Dans cet article, nous présenterons le module email disponible dans la bibliothèque standard. Utiliser ce dernier vous permettra d'écrire des programmes complets d'envoi d'e-mail sans avoir à requérir à une bibliothèque externe, cette dernière entraînant inévitablement pour le programmeur les contraintes liées aux dépendances.
Vous cherchez à stocker des informations dans un fichier plat ou en mémoire vive ? Vous souhaitez également pouvoir en extraire des informations à l'aide du langage de requêtes le plus puissant aujourd'hui, à savoir SQL ? Présent dans la puissante bibliothèque standard du langage Python, le module sqlite3 vous offre la possibilité de traiter un fichier ou un espace mémoire exactement comme une base de données...
Python est un langage disposant de types de données hors du commun et de possibilités algorithmiques qui, couplés à l’excellente bibliothèque Pygame, en font un excellent outil à mettre en avant pour le développement de jeux. Python permet de réaliser du développement rapide, mais est également une excellente solution de prototypage, les temps de développement pouvant être divisés par dix par rapport à la référence que reste C++. Cet article a pour ambition de présenter une vision de quelques problématiques usuelles en développement de jeux.

Magazines précédents

Tout pour optimiser votre système
Linux-Pratique Hors-série N°22
Tout pour optimiser votre système
Partage de fichiers
Linux-Pratique Hors-série N°21
Partage de fichiers
Passez à la ligne de commandes !
Linux-Pratique Hors-série N°20
Passez à la ligne de commandes !
9 cas où la ligne de commandes est indispensable
Linux-Pratique Hors-série N°18
9 cas où la ligne de commandes est indispensable

Les derniers articles Premiums

Les derniers articles Premium

Quarkus : applications Java pour conteneurs

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Initié par Red Hat, il y a quelques années le projet Quarkus a pris son envol et en est désormais à sa troisième version majeure. Il propose un cadre d’exécution pour une application de Java radicalement différente, où son exécution ultra optimisée en fait un parfait candidat pour le déploiement sur des conteneurs tels que ceux de Docker ou Podman. Quarkus va même encore plus loin, en permettant de transformer l’application Java en un exécutable natif ! Voici une rapide introduction, par la pratique, à cet incroyable framework, qui nous offrira l’opportunité d’illustrer également sa facilité de prise en main.

De la scytale au bit quantique : l’avenir de la cryptographie

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Imaginez un monde où nos données seraient aussi insaisissables que le célèbre chat de Schrödinger : à la fois sécurisées et non sécurisées jusqu'à ce qu'un cryptographe quantique décide d’y jeter un œil. Cet article nous emmène dans les méandres de la cryptographie quantique, où la physique quantique n'est pas seulement une affaire de laboratoires, mais la clé d'un futur numérique très sécurisé. Entre principes quantiques mystérieux, défis techniques, et applications pratiques, nous allons découvrir comment cette technologie s'apprête à encoder nos données dans une dimension où même les meilleurs cryptographes n’y pourraient rien faire.

Les nouvelles menaces liées à l’intelligence artificielle

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Sommes-nous proches de la singularité technologique ? Peu probable. Même si l’intelligence artificielle a fait un bond ces dernières années (elle est étudiée depuis des dizaines d’années), nous sommes loin d’en perdre le contrôle. Et pourtant, une partie de l’utilisation de l’intelligence artificielle échappe aux analystes. Eh oui ! Comme tout système, elle est utilisée par des acteurs malveillants essayant d’en tirer profit pécuniairement. Cet article met en exergue quelques-unes des applications de l’intelligence artificielle par des acteurs malveillants et décrit succinctement comment parer à leurs attaques.

Body