Skip to main content

Python 入门基础知识 - 函数 - 作用域

Python 入门基础知识 - 函数 - 作用域

作用域

在Python中,不同的函数可以有相同的函数名。在函数里已经声明的变量名,还可以继续在函数外使用。

而在脚本运行过程中,其值并不相互影响。代码如下

def test1(x):
    a = [1]
    a.append(x)
    print a


a = [1, 2, 3, 4]
test1(2)
print(a)

上述实例中两个同名的列表值所有其值不同,是因为他们处于不同的作用域里。

在Python中,作用域可以分为内置作用域,全部作用域和局部作用域。内置作用域是Python预先定义的。

全局作用域是所编写的整个脚本。

局部作用域是某个函数内部范围。

局部作用域内变量的改变并不影响全局作用域内的变量,除非通过引用的形式传递参数。

如果要在函数中使用函数外部的变量,可以在变量前使用global关键字。

代码如下:

def test2(x):
    global a
    return a + x


a = 5
print(test2(3))
a = 7
print(test2(3))

实例环境声明

# _*_ coding: utf-8 -*-
# version 2.7.13
版权声明

版权声明

durban.zhang 创作并维护的 Walkerfree 博客采用 创作共用保留署名-非商业-禁止演绎4.0国际许可证。本文首发于 Walkerfree 博客(http://www.walkerfree.com/),版权所有,侵权必究。本文永久链接:http://www.walkerfree.com/article/41