« Abracadabra, Python ! » : les méthodes magiques en Python

Magazine
Marque
GNU/Linux Magazine
Numéro
247
Mois de parution
avril 2021
Domaines


Résumé

Le langage Python est aujourd’hui très populaire. Malgré tout, certaines fonctionnalités permettant des usages avancés restent encore peu connues. Nous allons en voir quelques exemples ensemble.


Le langage Python propose un certain nombre de méthodes « magiques » permettant de régir le comportement de nos objets en fonction du contexte. Cet article a pour but de vous présenter ces méthodes avec des exemples concrets d’utilisation.

Les exemples que nous allons voir ici ont été réalisés avec Python 3.9.0 sorti le 5 octobre dernier, mais ils devraient fonctionner de la même manière sur toutes les versions de Python supérieures à 3.6.

1. Représentation

Nous allons commencer par le plus simple, mais qui est en général le plus utile : il s’agit de la représentation de notre objet. Python nous propose deux méthodes : __repr__ et __str__. La première nous sert à représenter notre objet d’un point de vue interne à l’application. La documentation de Python nous indique que cette méthode sert à « calculer la représentation ‘officielle’ en chaîne de caractères d’un objet ». Cette représentation est utile pour le débogage de...

Cet article est réservé aux abonnés. Il vous reste 95% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Pas de bras, mais quand même du chocolat : l'ère des assistants vocaux

Magazine
Marque
GNU/Linux Magazine
Numéro
249
Mois de parution
juin 2021
Domaines
Résumé

Nos interactions avec les ordinateurs (et autres smartphones) sont dignes du Moyen Âge. Qu'est-ce qui a réellement changé en la matière, ces 50 dernières années ? Rien : nous avons juste remplacé notre bon vieux clavier mécanique par un clavier virtuel, la belle affaire ! Pourtant, nous pouvons faire mieux, et nous devons faire mieux : bienvenue dans l'ère des assistants vocaux virtuels ! Nous allons découvrir ensemble ce qu'ils sont, et créer notre première application vocale.

Les mécanismes « exotiques » de Python

Magazine
Marque
GNU/Linux Magazine
Numéro
249
Mois de parution
juin 2021
Domaines
Résumé

Certains mécanismes de Python sont méconnus, peu utilisés. Ce n’est pas pour autant qu’ils sont inutiles, loin de là ! Dans cet article, nous allons faire un tour de quelques-unes de ces structures sous-employées.

Flutter 2 : l’alternative professionnelle

Magazine
Marque
GNU/Linux Magazine
Numéro
249
Mois de parution
juin 2021
Domaines
Résumé

Le 3 mars 2021, Google annonce Flutter 2 dans le premier événement « Flutter Engage ». La target Web/PWA devient stable et les targets desktop deviennent bêta avec une preview sur stable. Du côté Dart, la null safety devient la norme. Pendant ce temps, « Courses » se structure, adopte MVVM et devient non nullable !

Persistance et objets en C++

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
114
Mois de parution
mai 2021
Domaines
Résumé

Au travers de deux articles [1-2] sur les principes de l’orienté objet en C++, nous avions abordé encapsulation, héritage, et polymorphisme. Nous proposons dans ce nouvel article les classes de base pour gérer la persistance d’objets dans des fichiers. Ces classes utilisent les principes énoncés ci-dessus et présentent des stratégies via la généricité. Un exemple de stratégie pour stocker en binaire pourra être redéfini pour d’autres stratégies, comme un stockage en XML.