Aller au contenu

640 autres modules complementaires

Autres modules complémentaires

Module Python Fonctionnalités courantes Parallèle .NET
fractions Nombres rationnels exacts avec Fraction. Pas de fraction rationnelle dans la BCL ; type personnalisé sur BigInteger ou package spécialisé.
operator Clés de tri avec itemgetter() et attrgetter(). Lambdas LINQ : OrderBy(p => p.Price), Select(p => p.Name).
bisect Recherche de position avec bisect_left() ; insertion triée avec insort(). Array.BinarySearch() ou List<T>.BinarySearch() ; ~result fournit une position si absent, sans garantir le même choix parmi des doublons.
heapq Files de priorité : heappush(), heappop(), nlargest(). PriorityQueue<TElement, TPriority> ; pas nécessairement stable entre priorités égales.
textwrap Présentation du texte : dedent(), wrap(), fill(). string, StringBuilder et algorithme dédié pour le retour à la ligne ; pas de dedent() universel identique.
pprint Affichage de structures avec pprint() et pformat(). JsonSerializer.Serialize(..., new JsonSerializerOptions { WriteIndented = true }), pour les objets sérialisables ; ce n’est pas un diagnostic universel.
configparser Fichiers INI avec ConfigParser. Fournisseur INI de Microsoft.Extensions.Configuration, avec les références nécessaires au projet.
gzip Lecture et écriture compressées avec open(). GZipStream dans System.IO.Compression.
base64 Encodage et décodage avec b64encode() et b64decode() ; ce n'est pas du chiffrement. Convert.ToBase64String() / Convert.FromBase64String().
xml.etree.ElementTree XML : parse(), fromstring(), find(), findall(). LINQ to XML : XDocument, XElement, Element(), Elements().
contextlib Gestionnaires de contexte avec contextmanager(), closing() et ExitStack. using, await using, IDisposable ; composition explicite pour plusieurs ressources.
importlib Chargement dynamique avec import_module(). Assembly.Load() / AssemblyLoadContext, avec un modèle de chargement distinct.
importlib.resources Accès aux ressources d'un package avec files(). Assembly.GetManifestResourceStream() pour les ressources incorporées.
inspect Inspection des signatures avec signature(). Réflexion : MethodInfo, GetParameters().
traceback Formatage des traces avec format_exc(). Exception.ToString() et StackTrace ; informations disponibles variables selon compilation et symboles.
timeit Mesures répétées de petits traitements avec timeit() et repeat(). Stopwatch pour une mesure simple ; BenchmarkDotNet, package tiers, pour des microbenchmarks rigoureux.
venv Environnements virtuels via python -m venv .venv. Pas d’équivalent direct ; isolation des dépendances par projet, NuGet, déploiement autonome ou conteneur selon le besoin.

Ces modules répondent à des besoins plus ciblés. Ils peuvent être abordés dans des chapitres dédiés lorsque les exemples du livre les nécessitent.