简明 Python 教程
第7章 函数
上一页 局部变量 下一页

局部变量

当你在函数定义内声明变量的时候,时时彩计划软件公式:它们与函数外具有相同名称的其他变量没有任何关系,即变量名称对于函数来说是 局部 的。这称为变量的 作用域 。所有变量的作用域是它们被定义的块,从它们的名称被定义的那点开始。

使用局部变量

例7.3 使用局部变量

#!/usr/bin/python
# Filename: func_local.py


def func(x):
    print 'x is', x
    x = 2
    print 'Changed local x to', x

x = 50
func(x)
print 'x is still', x

(源文件:code/func_local.py

输出

$ python func_local.py
x is 50
Changed local x to 2
x is still 50

它如何工作

在函数中,我们第一次使用x 的时候,Python使用函数声明的形参的值。

接下来,我们把值2赋给xx是函数的局部变量。所以,当我们在函数内改变x的值的时候,在主块中定义的x不受影响。

在最后一个print语句中,我们证明了主块中的x的值确实没有受到影响。

使用global语句

如果你想要为一个定义在函数外的变量赋值,那么你就得告诉Python这个变量名不是局部的,而是 全局 的。我们使用global语句完成这一功能。没有global语句,是不可能为定义在函数外的变量赋值的。

你可以使用定义在函数外的变量的值(假设在函数内没有同名的变量)。然而,我并不鼓励你这样做,并且你应该尽量避免这样做,因为这使得程序的读者会不清楚这个变量是在哪里定义的。使用global语句可以清楚地表明变量是在外面的块定义的。

例7.4 使用global语句

#!/usr/bin/python
# Filename: func_global.py


def func():
    global x

    print 'x is', x
    x = 2
    print 'Changed local x to', x

x = 50
func()
print 'Value of x is', x

(源文件:code/func_global.py

输出

$ python func_global.py
x is 50
Changed global x to 2
Value of x is 2

它如何工作

global语句被用来声明x是全局的——因此,当我们在函数内把值赋给x的时候,这个变化也反映在我们在主块中使用x的值的时候。

你可以使用同一个global语句指定多个全局变量。例如global x, y, z


上一页 上一级 下一页
函数形参 首页 默认参数值
时时彩计划软件公式
@ssv
先知者软件 重庆时时彩赢彩专家 时时彩后四 黑彩平台怎么制作 重时时彩计划手机软件
江西时时彩免费计划软件 千百万时时彩平台登录 那个平台有江西时时彩 哈尔滨时时彩软件 江西时时彩开奖直播视频
功夫时时彩在线计划 安徽时时彩快3开奖号 iu时时彩评测网 重庆时时彩后二稳赚霸主 时时彩源码有什么用
重庆时时彩验证软件 时时彩跟计划挂了就跟 时时彩五星做号软件 稳定的时时彩软件 pk10和时时彩哪个稳定
一分钟开一次奖的是什么彩票 上海市浦江人才计划计划卐北京快3彩票控计划卐上海大学招生计划计划卐上海快3怎么注册 天津时时彩五星综合走势图 时时彩计划 十一选五开奖结果贵州
河南快三最大遗漏 海南七星彩开奖结果 3a时时彩平台 云南时时彩精准计划软件手机版 山东十一选五走势图来彩彩票?﹤计划﹥
六合彩官方网站 湖北快3杀号技巧 delphi时时彩软件源码 海南七星彩 香港赛马会开奖结果
湖北快3直播 腾讯有分分彩在哪买 浙江快乐12开奖结果 北京赛车pk10开奖结果 河北快3和值预测上银狐网?河北快3开奖果?河北快3怎么选号