Java教程

Python 作用域:局部作用域、全局作用域和使用 global 关键字

本文主要是介绍Python 作用域:局部作用域、全局作用域和使用 global 关键字,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

变量只在创建它的区域内可用。这被称为作用域。

局部作用域

在函数内部创建的变量属于该函数的局部作用域,并且只能在该函数内部使用。

示例:在函数内部创建的变量在该函数内部可用:

def  myfunc():

x = 300

print(x)

  

myfunc()

函数内部的函数

如上面的示例所解释的那样,变量 x 在函数外部不可用,但可以在函数内部的任何函数中使用:

示例:局部变量可以从函数内部的函数中访问:

def  myfunc():

x = 300

def  myinnerfunc():

print(x)

myinnerfunc()

  

myfunc()

全局作用域

在 Python 代码的主体部分创建的变量是全局变量,属于全局作用域。全局变量可以在任何作用域中使用,包括全局作用域和局部作用域。

示例:在函数外部创建的变量是全局的,并且可以被任何人使用:

x = 300

  

def  myfunc():

print(x)

  

myfunc()

  

print(x)

变量命名

如果在函数内部和外部使用相同的变量名称,Python 将把它们视为两个不同的变量,一个在全局作用域(函数外部)中可用,另一个在局部作用域(函数内部)中可用:

示例:该函数将打印局部变量 x,然后代码将打印全局变量 x:

x = 300

  

def  myfunc():

x = 200

print(x)

  

myfunc()

  

print(x)

global 关键字

如果需要创建一个全局变量,但又受限于局部作用域,可以使用 global 关键字。global 关键字将变量声明为全局变量。

示例:如果使用 global 关键字,变量将属于全局作用域:

def  myfunc():

global x

x = 300

  

myfunc()

  

print(x)

此外,如果您希望在函数内部更改全局变量的值,也可以使用 global 关键字。

示例:要在函数内部更改全局变量的值,请使用 global 关键字引用该变量:

x = 300

  

def  myfunc():

global x

x = 200

  

myfunc()

  

print(x)

这篇关于Python 作用域:局部作用域、全局作用域和使用 global 关键字的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!