Couverture
La programmation avec Python
SysOps 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.

Les bases de Python

Magazine
Marque
SysOps Pratique
HS n°
Numéro
23
Mois de parution
février 2012
Spécialité(s)
Résumé

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...

Les fonctions et les modules

Magazine
Marque
SysOps Pratique
HS n°
Numéro
23
Mois de parution
février 2012
Spécialité(s)
Résumé
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.

Analyser des chaînes de caractères à l'aide des expressions régulières

Magazine
Marque
SysOps Pratique
HS n°
Numéro
23
Mois de parution
février 2012
Spécialité(s)
Résumé
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.

Utiliser les arguments de la ligne de commandes

Magazine
Marque
SysOps Pratique
HS n°
Numéro
23
Mois de parution
février 2012
Spécialité(s)
Résumé
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.

Lire et écrire des fichiers XML

Magazine
Marque
SysOps Pratique
HS n°
Numéro
23
Mois de parution
février 2012
Spécialité(s)
Résumé
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.

La programmation orientée objet en Python – Épisode 1 : la théorie

Magazine
Marque
SysOps Pratique
HS n°
Numéro
23
Mois de parution
février 2012
Spécialité(s)
Résumé

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.

La programmation orientée objet en Python – Épisode 2 : la pratique

Magazine
Marque
SysOps Pratique
HS n°
Numéro
23
Mois de parution
février 2012
Spécialité(s)
Résumé

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 !

Rédiger et envoyer un e-mail avec Python 3.2

Magazine
Marque
SysOps Pratique
HS n°
Numéro
23
Mois de parution
février 2012
Spécialité(s)
Résumé
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.

Du SQL dans vos fichiers : le module sqlite3

Magazine
Marque
SysOps Pratique
HS n°
Numéro
23
Mois de parution
février 2012
Spécialité(s)
Résumé

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...

Le Python qui jouait à la bataille navale

Magazine
Marque
SysOps Pratique
HS n°
Numéro
23
Mois de parution
février 2012
Spécialité(s)
Résumé
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.
Tous les numéros standards
Tous les numéros
Novembre/Décembre 2025
Remplacez votre VPN par Nebula !
Septembre/Octobre 2025
Détectez les vulnérabilités avant de déployer !
Juillet/Août 2025
Flatcar : un système hyper sécurisé pour le Cloud !
Mai/Juin 2025
Résolvez vos incidents avec Ansible !
Mars/Avril 2025
Sécurité : faites face aux exigences réglementaires & aux menaces avec Deming !
Janvier/Février 2025
Monitorez simplement vos services avec Gatus !
Novembre/Décembre 2024
Détectez les menaces avec Snort
Septembre/Octobre 2024
Maîtrisez Let’s Encrypt !
Juillet/Août 2024
Auditez la sécurité de votre système !
Mai/Juin 2024
Utilisez Ansible pour la gestion de vos serveurs Tomcat !
Mars/Avril 2024
Infrastructure as code en pratique avec Pulumi !
Janvier/Février 2024
Créez votre cluster LXD !
Novembre/Décembre 2023
VictoriaMetrics : le monitoring simple et fiable !
Septembre/Octobre 2023
Quels outils & méthodes pour réaliser votre test d’intrusion ?
Juillet/Août 2023
Testez Caddy, le serveur web ultime !
Mai/Juin 2023
Comprenez la menace web shell
Mars/Avril 2023
Déployez votre solution de Single Sign On !
Janvier/Février 2023
Créez vos premières microVM avec Firecracker !
Novembre/Décembre 2022
Automatisez vos VM avec Proxmox & Ansible !
Septembre/Octobre 2022
SSL/TLS : Créez votre autorité de certification privée
Juillet/Août 2022
Sécurisez vos serveurs avec CrowdSec
Mai/Juin 2022
Créez votre site web en conteneurs LXC
Mars/Avril 2022
Spécial Télétravail : Sécurisez l'accès à vos ressources avec OpenVPN !
Janvier/Février 2022
Protégez vos sites des attaques avec Fail2ban !
Novembre/Décembre 2021
Créez votre Cloud privé avec OpenNebula !
Septembre/Octobre 2021
L'Administration système simple et adaptable avec Cockpit !
Juillet/Août 2021
Déployez vos machines virtuelles automatiquement !
Mai/Juin 2021
16 conseils pour booster votre terminal en 2021 !
Mars/Avril 2021
Maîtrisez le DevOps par la pratique !
Janvier/Février 2021
Comprenez les certificats SSL/TLS par la pratique
Novembre/Décembre 2020
Mettez en place votre firewall avec nftables !
Septembre/Octobre 2020
Monitorez tous vos conteneurs avec Prometheus !
Juillet/Août 2020
DevOps : Installez Gitlab pour vos développeurs !
Mai/juin 2020
Particuliers, PME/PMI, TPE, ETI, Collectivités...

Bien choisir votre hébergement !
Mars/Avril 2020
Tout savoir sur le DevOps !
Janvier/Février 2020
Docker n'est pas la seule solution : LXC, l'autre star des conteneurs !
Novembre/Décembre 2019
Enfin un VPN facile avec WireGuard !
Septembre/Octobre 2019
5 solutions pour accéder et contrôler vos machines à distance
Juillet/Août 2019
Créez votre hotspot WiFi sécurisé
Mai/Juin 2019
Simplifiez l'administration de vos machines avec Ansible !
Mars/Avril 2019
Sécurisez vos systèmes : l'essentiel à savoir !
Janvier/Février 2019
Tirez le meilleur de votre ligne de commandes avec Powerline !
Novembre/Décembre 2018
Échappez à la censure du net
Septembre/Octobre 2018
Initiez-vous au Machine Learning sans code !
Juillet/Août 2018
Débuter avec Docker !
Mai/Juin 2018
Pistage sur le Web : comment s'en prémunir ?
Mars/Avril 2018
Aidez la recherche en mettant à disposition votre PC lorsque vous ne l'utilisez pas !
Janvier/Février 2018
Domotisez avec Linux & Domoticz !
Novembre/Décembre 2017
Principes, usages & mode d’emploi : initiez-vous aux Bitcoins et crypto-monnaies !
Septembre/Octobre 2017
Nos conseils pour accélérer votre système !
Juillet/Août 2017
J'apprends à programmer en créant un jeu avec Processing !
Mai/Juin 2017
Quelle est la valeur de votre vie numérique ?
Mars/Avril 2017
Contrôlez l'accès au Web !
Janvier/Février 2017
Créez facilement votre Media Center à partir de votre PC et/ou votre Raspberry Pi avec Kodi
Novembre/Décembre 2016
Tout n'est pas perdu ! Sauvez vos données !
Septembre/Octobre 2016
Ordinateurs, smartphones & tablettes Android... un VPN pour les protéger tous !
Juillet/Août 2016
(Re)Devenez indépendant : passez à l’auto-hébergement
Mai/Juin 2016
Diffusez la TNT HD dans toute la maison !
Mars/Avril 2016
Débarassez-vous des publicités qui vous traquent !
Janvier/Février 2016
Sécurisez votre serveur web avec Apache & SSL !
Novembre/Décembre 2015
Découvrez Tails, la solution utilisée par Snowden !
Septembre/Octobre 2015
Optez pour Docker !
Juillet/Août 2015
Créez votre serveur Asterisk !
Mai/Juin 2015
Créez votre VPN !
Mars/Avril 2015
Faites fonctionner Windows et Linux simultanément !
Janvier/Février 2015
Tor : anonymisez tout votre trafic !
Novembre/Décembre 2014
Automatisez l’administration de vos serveurs en toute simplicité avec Rundeck !
Septembre/Octobre 2014
Réalisez votre propre installation domotique grâce à Domogik !
Juillet/Août 2014
Gérez toutes vos machines virtuelles avec oVirt !
Mai/Juin 2014
Proxy : accélérez et contrôlez le Web
Mars/Avril 2014
Optez pour le RAID !
Janvier/Février 2014
Mettre en place votre serveur Samba
Novembre/Décembre 2013
Créez votre réseau privé avec OpenVPN
Septembre/Octobre 2013
Profitez de vos sites web favoris... sans votre navigateur !
Juillet/Août 2013
Faites parler votre système ! Tour d'horizon de la synthèse vocale
Mai/Juin 2013
Vous avez choisi Linux ? N'abandonnez plus vos applications Windows !
Mars/Avril 2013
Contrôlez vos machines à distance en toute sécurité !
Janvier/Février 2013
Évitez la perte de données grâce à LVM !
Novembre/Décembre 2012
Contrôlez et gérez tous vos serveurs simultanément avec Ansible
Septembre/Octobre 2012
Déployez des clients légers avec LTSP !
Juillet/Août 2012
Mise en place d'un serveur multifonction
Mai/Juin 2012
Ampache pour créer votre cloud privé et diffuser toute votre musique !
Mars/Avril 2012
OpenVAS : la solution pour identifier rapidement les vulnérabilités de vos systèmes
Janvier/Février 2012
Comment survivre à un crash système (sans paniquer) ?
Novembre/Décembre 2011
Vous recherchez une solution de stockage simple à mettre en place ? FreeNAS 8
Septembre/Octobre 2011
Contrôlez vos machines à distance
Juillet/Août 2011
Découvrez TrixBox
Mai/Juin 2011
Développez vos applications Android avec le SDK
Mars/Avril 2011
Optez pour la virtualisation avec le nouveau VirtualBox 4
Janvier/Février 2011
Composez votre bureau avec Openbox
Novembre/Décembre 2010
Diffusez la TV dans toute la maison !
Septembre/Octobre 2010
Virtualisation avec KVM/QEMU
Juillet/Août 2010
5 gestionnaires de photos au banc d'essai !
Mai/Juin 2010
Sauvez vos fichiers et restaurez votre système !
Mars/Avril 2010
Partagez facilement vos fichiers entre toutes vos machines Linux ou Windows !
Janvier/Février 2010
VirtualBox
Novembre/Décembre 2009
GNOME 2.28, 2.30... 3.0 !
Septembre/Octobre 2009
Synchronisez vos fichiers
Juillet/Août 2009
Protégez vos disques des regards indiscrets !
Tous les numéros hors-séries
Tous les numéros
Avril/Mai 2023
Administration système
Février/Mars 2023
VPN - Installation / Configuration / Automatisation
Octobre/Novembre 2022
Haute disponibilité : Comprendre / Utiliser / Exploiter
Juin/Juillet 2022
Progressez avec Ansible et l'orchestration de vos serveurs
Février/Mars 2022
Bases de données - Déployez la solution adaptée à votre projet !
Octobre/Novembre 2021
Docker avancé : simplifiez – optimisez – accélérez
Juin/Juillet 2021
Survivre à un incident - Quels outils & méthodes pour préserver votre système d’information ?
Février/Mars 2021
Réalisez votre premier pentest pour sécuriser votre système
Novembre/Décembre 2020
Sécurisez vos serveurs et votre réseau local
Septembre/Octobre 2020
Déployez un intranet Linux dans votre PME avec Ansible & Red Hat Enterprise Linux
Juillet/Août 2020
Déployez votre système de supervision
Octobre/Novembre 2019
Sécurisez vos postes de travail !
Juin/Juillet 2019
Conteneurs & Virtualisation
Février/Mars 2019
Libérez-vous de l'emprise des GAFA !
Octobre/Novembre 2018
Optimisez votre réseau local !
Juin/Juillet 2018
Découvrir la programmation
Février/Mars 2018
Retrogaming : le guide pour retrouver le plaisir des classiques du jeu vidéo
Octobre/Novembre 2017
Créez votre réseau local
Juillet/Août 2017
Mémo ligne de commandes
Mars/Avril 2017
C'est décidé, je débute sous Linux avec la Raspberry Pi !
Octobre/Novembre 2016
Blender - Le guide pour réaliser votre première animation 3D !
Juin/Juillet 2016
Je personnalise mon site WordPress
Mars/Avril 2016
Je crée mon site avec WordPress 4.x
Octobre/Novembre 2015
Protégez votre vie privée et reprenez le contrôle de vos données !
Juin/Juillet 2015
7 jours pour apprendre à programmer en PHP !
Avril/Mai 2015
Le guide pour apprendre le Shell en 7 jours !
Octobre/Novembre 2014
Le guide pour faire vos premiers pas en tant que sysadmin
Juin/Juillet 2014
Raspberry Pi
Février/Mars 2014
Musique et son sous Linux
Octobre/Novembre 2013
Recyclez !
Août/Septembre 2013
Ligne de commandes - Le guide d'initiation et de découverte du shell sous Linux
Février/Mars 2013
Entreprises, indépendants et associations, migrez vers le 100% open source !
Novembre/Décembre 2012
HTML 5 - Découvrez le Web du futur !
Juin/Juillet 2012
Initiation à JavaScript
Février/Mars 2012
La programmation avec Python
Octobre/Novembre 2011
Tout pour optimiser votre système
Juin/Juillet 2011
Partage de fichiers
Avril/Mai 2011
Passez à la ligne de commandes !
Novembre/Décembre 2010
Apprenez à construire un vrai site web pour 40€/an
Juin/Juillet 2010
9 cas où la ligne de commandes est indispensable