2 dépôts
Code examples demonstrating the internal Python object model, including attribute access and special methods.
Distinct from Python Descriptors: Broadens from just descriptors to include the wider Python object model such as dunder methods and attribute lookup
Explore 2 awesome GitHub repositories matching software engineering & architecture · Object Model Implementations. Refine with filters or upvote what's useful.
Ce projet est une collection de scripts pratiques et de guides de référence qui démontrent des fonctionnalités et idiomes avancés du langage Python. Il fournit des implémentations de code pour maîtriser des concepts tels que la concurrence, la métaprogrammation et la conception de structures de données. Le dépôt inclut des exemples du modèle d'objet Python, couvrant l'accès aux attributs personnalisés, les protocoles de descripteur et les surcharges de méthodes spéciales. Il présente également des implémentations de patterns de conception qui utilisent des fonctions de première classe et des décorateurs pour réduire le boilerplate orienté objet. La base de code couvre un large éventail de capacités, notamment la programmation asynchrone avec des boucles d'événements et des futures, la création de séquences et de générateurs personnalisés, et l'utilisation de classes de base abstraites pour l'application d'interfaces. Il démontre en outre la gestion des ressources via des gestionnaires de contexte et la manipulation de séquences de texte et d'octets.
Code demonstrating custom attribute access, descriptor protocols, and special method overrides for Python objects.
CPython-Internals est un guide d'implémentation technique et une référence pour l'interpréteur CPython. Il fournit une analyse détaillée du code source C interne et de l'architecture, en se concentrant sur la logique qui régit le comportement de l'interpréteur. Le projet documente le modèle d'objet Python et le pipeline de compilation, retraçant le processus depuis la grammaire brute et les arbres de syntaxe abstraits jusqu'au bytecode exécutable. Il sert également de référence pour le développement d'extensions C, expliquant comment interfacer avec les structures de données internes et utiliser l'API C. Le matériel couvre la gestion de la mémoire, incluant le comptage de références et le garbage collection générationnel, ainsi que la fonction du verrou global de l'interpréteur (GIL).
Examines the low-level C implementation of the Python object model and internal data structures.