Encodage d'un script Python et exécution du script encodé (Acme::Buffy style)

Magazine
Marque
GNU/Linux Magazine
Numéro
245
Mois de parution
février 2021
Spécialité(s)


Résumé

Il est parfois intéressant de considérer des problèmes anodins, complètement inutiles, mais qui permettent de mettre en œuvre des éléments de programmation encore jamais employés. Je vous propose ici de réécrire en Python un module bien connu des développeurs Perl : Acme::Buffy.


Acme::Buffy est un module Perl amusant : il suffit de le charger au début d'un code Perl pour que celui-ci soit encodé sous la forme d'une suite de termes « Buffy », où la casse sera modifiée de manière à offrir la diversité nécessaire pour couvrir l'ensemble des caractères. Un petit test sera sans doute plus parlant, si vous avez déjà installé Perl :

$ cpan -i Acme::Buffy

Cette ligne permet d'installer le module Acme::Buffy. Nous pouvons ensuite créer un petit programme de test dans essai.pl :

use Acme::Buffy;
 
print "Hello world";

Au lancement du script, nous obtiendrons l'affichage attendu de « Hello world » :

$ perl essai.pl
Hello world

Mais une petite surprise vous attend en ouvrant à nouveau le fichier essai.pl :

use Acme::Buffy;
BUffY bUFFY BUffY bUFFY bUfFy buffy BUFfy       buFFY BufFy     BufFY   bUFfy BuFFY buffy       bufFy bUffy bUffY BuFfy BuffY   bUFfy BUfFY BUFFy       Buffy bUffY     BuFFY BUFFy     BufFy
BUFfy...
Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous