python 跨函数变量

  • Post category:Python

在Python中,一个函数的变量在默认情况下只能在函数内部使用,如果想要在函数之间共享变量,需要使用global关键字来声明变量。 下面是跨函数变量的完整攻略:

  1. 使用global关键字声明变量

在声明变量时,需要在变量名称前添加global关键字,以告诉Python该变量为全局变量。

def func1():
    global x
    x = 5
def func2():
    print(x)

func1()
func2()

输出结果为:5

在此例中, func1()函数使用global关键字声明x变量为全局变量,并将x赋值为5 。 func2() 函数中输出x的值。因为x在func1()中被声明为全局变量,所以在 func2() 中也可以访问变量x。

  1. 使用模块级别的变量来实现交互

在Python中,除函数外,还有一种可供全局使用的变量,即模块级别变量。这些变量在整个模块内部都可见,可以满足在多个函数中共享变量的需求。

#testmodule.py
x = None
def func1():
    global x
    x = 5
def func2():
    print(x)
#main.py
import testmodule

testmodule.func1()
testmodule.func2()

输出结果为:5

这个例子中,并没有使用global关键字。在 testmodule 模块中, x 被声明为模块级别变量,可以在模块内部任何位置进行访问和修改。在 main.py 中,使用 import testmodule 将模块载入后,直接使用模块名访问其中的函数和变量。

综上所述,以上是Python跨函数变量的完整攻略。在多个函数中共享变量可以使用global关键字或模块级别变量实现。