在Python中调用变量(本地与全局)

在Python中调用变量(本地与全局),python,Python,以下内容适用于8个方面: def mypow(a,b): c=a**b print (c) mypow(2,3) 但以下情况并非如此: def mypow(a,b): c=a**b mypow(2,3) 我知道在前者中我们打印,但由于后者没有给出错误消息(也没有给出结果),那么在后者中实际发生了什么 def mypow(a,b): c=a**b mypow(2,3) 函数执行后;函数中的所有数据都将被销毁。如果您想在函数执行后在屏幕上看到任何内容;使用打印或返回

以下内容适用于8个方面:

def mypow(a,b):
    c=a**b
    print (c)

mypow(2,3)
但以下情况并非如此:

def mypow(a,b):
    c=a**b

mypow(2,3)
我知道在前者中我们打印,但由于后者没有给出错误消息(也没有给出结果),那么在后者中实际发生了什么

def mypow(a,b):
c=a**b
mypow(2,3)
函数执行后;函数中的所有数据都将被销毁。如果您想在函数执行后在屏幕上看到任何内容;使用
打印
返回

在任何函数的末尾,您都有多种选择

1-
返回
。返回输出。当您返回输出时,您将在函数执行后收到它,并且没有错误,例如:
d=func(任意_值)
,如果您在
func
中指定了返回值,您将收到它并将其存储在
d
中。如果未在函数中指定return语句,函数将返回
None

2-
打印
。打印任何东西。这是您在第一个函数中所做的。在这种情况下,您的屏幕上会显示打印内容,您可以使用return
None
,因此您不能将输出(打印值)保存在任何变量中或在其他任何地方使用它


3-
全局
。分配给全局。当您需要此选项时,您可以在函数外部创建一个变量,例如
my_variale=5
,并在函数的第一行写入
gloabl my_variable
。假设函数包含5行,在第#3行中,您执行了
my_variable=7
。函数执行并销毁函数中的所有值后;当您选中
my_变量
时,您将看到它包含
5的值

,您可以将函数的“打印”替换为“返回”,并获得相同的结果

def mypow(a,b):
    c=a**b
    return c

mypow(2,3)

函数中嵌套的变量将被视为局部变量,除非在变量名之前添加全局变量。

将值赋给局部变量,然后对其不做任何操作。然后,该方法不返回任何内容,因此隐式返回None,并且。。。没有更多的工作要做。如果你不给c赋值,而是
返回a**b
,你可以通过
打印(mypow(2,3))
打印结果,这样的问题最好自己分析,或者你可以把它们发布到代码中,自己一步一步地完成。这与局部变量和全局变量无关