Maison > Article > développement back-end > Variables et portée en Python
Introduction à la portée
Il existe 4 types de portée en python : L : local, portée locale, c'est-à-dire les variables définies dans la fonction
E : englobant, Le ; la portée locale de la fonction parent imbriquée est la portée locale de la fonction supérieure qui contient cette fonction, mais elle n'est pas globale
G : variables globales, qui sont des variables définies au niveau du module ; in, variables dans les modules fixes du système, tels que int, bytearray, etc. L'ordre de priorité des variables de recherche est : portée locale > portée externe > globale dans le module actuel > portée intégrée Python, qui est LEGB.
x = int(2.9) # int built-in g_count = 0 # global def outer(): o_count = 1 # enclosing def inner(): i_count = 2 # local
Bien sûr, local et englobant sont relatifs, et les variables englobantes sont également locales par rapport à la couche supérieure.
#定义变量a >>> a = 0 >>> print a 0 #定义函数p() >>> def p(): ... print a ... >>> p() 0 #定义函数p2() >>> def p2(): ... print a ... a = 3 ... print a ... >>> p2() # 运行出错,外部变量a先被引用,不能重新赋值 Traceback (most recent call last): File "<interactive input>", line 1, in <module> File "<interactive input>", line 2, in p2 UnboundLocalError: local variable 'a' referenced before assignment #定义函数p3() >>> def p3(): ... a = 3 # 不引用直接赋值 ... print a ... >>> p3() 3 >>> print a 0 # 外部变量a并未改变
Ce qui précède est l'explication détaillée des variables et des portées en Python introduites par l'éditeur Si vous en avez. Si vous avez des questions, laissez-moi un message et je vous répondrai à temps. Je voudrais également vous remercier tous pour votre soutien au site Web PHP chinois !
Pour plus d'articles liés aux variables et à la portée en Python, veuillez faire attention au site Web PHP chinois !