Maison  >  Article  >  développement back-end  >  Comment la portée des variables est-elle définie en Python ?

Comment la portée des variables est-elle définie en Python ?

PHPz
PHPzoriginal
2023-10-26 10:07:471315parcourir

Comment la portée des variables est-elle définie en Python ?

Comment la portée des variables est-elle définie en Python ?

En Python, la portée d'une variable fait référence à la portée dans laquelle la variable prend effet, c'est-à-dire la portée dans laquelle la variable peut être accédée et manipulée. La portée des variables en Python est divisée en deux types : la portée globale et la portée locale.

La portée globale fait référence aux variables accessibles et manipulables tout au long du programme. En Python, les variables de portée globale sont généralement définies au niveau le plus externe du programme, et elles sont accessibles et référencées dans des fonctions ou d'autres blocs de code. Les variables de portée globale peuvent être utilisées n'importe où dans l'ensemble du programme.

Voici un exemple de portée globale :

x = 10

def func():
    print(x)

func()  # 输出:10

Dans le code ci-dessus, la variable x est accessible à l'intérieur de la fonction func, alors qu'elle est définie en dehors de la fonction, il appartient donc à la portée mondiale. Par conséquent, la fonction func peut accéder à la variable x et afficher sa valeur. x在函数func内部被访问,而它是在函数外部定义的,所以它属于全局作用域。因此,函数func中可以访问到变量x并输出其值。

局部作用域指的是在函数内部定义的变量,只能在函数内部被访问和操作。它的作用范围仅限于定义它的那个函数。一旦函数执行完成,局部作用域的变量就会被销毁。

下面是一个局部作用域的例子:

def func():
    y = 20
    print(y)

func()  # 输出:20
print(y)  # 报错:NameError: name 'y' is not defined

在上面的代码中,变量y被定义在函数func内部,它属于局部作用域。因此,在函数内部可以访问到变量y并输出其值。但是,当我们在函数外部尝试访问变量y时,会报错。

在Python中,当一个变量在函数内部被赋值时,默认情况下,Python会将该变量视为局部变量。但是,如果我们希望在函数内部引用到全局作用域中的变量,我们可以使用global关键字来声明变量。

下面是一个使用global关键字的例子:

x = 10

def func():
    global x  # 声明变量x为全局变量
    x = 20
    print(x)

func()  # 输出:20
print(x)  # 输出:20

在上面的代码中,我们在函数func内部使用global关键字将变量x声明为全局变量。这样,在函数内部修改了变量x的值之后,变量x在全局作用域中的值也会随之改变。

总结起来,Python中的变量作用域分为全局作用域和局部作用域。全局作用域的变量可以在整个程序的任何地方被访问和操作,而局部作用域的变量仅限于函数内部使用。如果需要在函数内部引用全局作用域中的变量,可以使用global

La portée locale fait référence aux variables définies dans une fonction et n'est accessible et utilisable qu'à l'intérieur de la fonction. Son champ d'application est limité à la fonction dans laquelle il est défini. Une fois l'exécution de la fonction terminée, les variables de portée locale seront détruites. 🎜🎜Ce qui suit est un exemple de portée locale : 🎜rrreee🎜Dans le code ci-dessus, la variable y est définie à l'intérieur de la fonction func, qui appartient à la portée locale. Par conséquent, la variable y est accessible à l'intérieur de la fonction et sa valeur peut être sortie. Cependant, lorsque nous essayons d'accéder à la variable y en dehors de la fonction, une erreur sera signalée. 🎜🎜En Python, lorsqu'une variable se voit attribuer une valeur dans une fonction, Python traite la variable comme une variable locale par défaut. Cependant, si nous voulons faire référence à une variable dans la portée globale au sein d'une fonction, nous pouvons utiliser le mot-clé global pour déclarer la variable. 🎜🎜Voici un exemple d'utilisation du mot-clé global : 🎜rrreee🎜Dans le code ci-dessus, nous utilisons la touche global à l'intérieur de la fonction func La variable x est déclarée comme variable globale. De cette façon, une fois la valeur de la variable x modifiée à l'intérieur de la fonction, la valeur de la variable x dans la portée globale changera également en conséquence. 🎜🎜Pour résumer, la portée des variables en Python est divisée en portée globale et portée locale. Les variables de portée globale sont accessibles et manipulables n'importe où dans l'ensemble du programme, tandis que les variables de portée locale sont limitées à une utilisation dans les fonctions. Si vous devez faire référence à une variable dans la portée globale au sein d'une fonction, vous pouvez utiliser le mot-clé global pour la déclarer. Comprendre la portée des variables est important pour écrire du code Python clairement structuré et maintenable. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn