Python Language
Blocs de code, cadres d'exécution et espaces de noms
Recherche…
Introduction
Un bloc de code est un morceau de texte de programme Python pouvant être exécuté en tant qu'unité, tel qu'un module, une définition de classe ou un corps de fonction. Certains blocs de code (comme les modules) ne sont normalement exécutés qu’une seule fois, d’autres (comme les corps de fonctions) peuvent être exécutés plusieurs fois. Les blocs de code peuvent contenir textuellement d'autres blocs de code. Les blocs de code peuvent invoquer d'autres blocs de code (qui peuvent ou non être contenus textuellement) dans le cadre de leur exécution, par exemple en invoquant (appelant) une fonction.
Espaces de noms de blocs de code
Type de bloc de code | Espace de noms global | Espace de noms local |
---|---|---|
Module | ns pour le module | même chose que globale |
Script (fichier ou commande) | ns pour __main__ | même chose que globale |
Commande interactive | ns pour __main__ | même chose que globale |
Définition de classe | ns global du bloc contenant | nouvel espace de noms |
Corps de fonction | ns global du bloc contenant | nouvel espace de noms |
Chaîne transmise à l'instruction exec | ns global du bloc contenant | espace de noms local du bloc contenant |
Chaîne passée à eval() | ns global de l'appelant | ns local de l'appelant |
Fichier lu par execfile() | ns global de l'appelant | ns local de l'appelant |
Expression lue par input() | ns global de l'appelant | ns local de l'appelant |
Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow