视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Python程序设计基础教案24--全局变量和局部变量
2025-10-02 04:47:03 责编:小OO
文档
XXXXXXXXXX学院

授   课   教   案

授课日期2018.12.21课 时

2
课   型

理论课□  实训课□  习题课□  上机课□  其他 

授课章节、主题Python变量范围
教学目

的要求

Python的主程序中包含函数、函数内部有自己的变量,主程序也有自己的变量。这些变量是什么关系,怎样在函数内部使用主程序的变量。

本节课的教学目标就是分清楚这些变量的性质,掌握局部变量和全局变量的使用。

教学重点及难点重点:区分局部变量和全部变量

难点:正确使用局部变量和全局变量

教  学  设  计

说  明

一、主要内容 

(1)局部变量和全局变量的概念

(2)局部变量的使用

(3)局部变量和全局变量同名下的应用

(4)全局变量的作用域

(5)多个函数中使用共同的全局变量

(6)随堂练习

二、主要教学方法

案例讲授法:以教师为主导,引导学生掌握并区分局部变量和全局变量。通过大量案例介绍,加深学生对所学知识的理解,帮助学生更好的吸收新的知识。

作业与思考题:全局变量和局部变量的作用域?

课后回忆:通过本节课的学习,学生能够正确区分全局变量和局部变量。

任课教师教研室主任签字
XXXXXXXXX学院

授 课 教 案 附 页

教 学 设 计

说 明

一、局部变量和全局变量的概念

局部变量

概念:局部变量也称内部变量。局部变量是在函数内作定义说明的,其作用域仅限于函数内,离开该函数后再使用这种变量是非法的。

实例1:

def sum(m):

s=0

    for p in range(m+1):

         s=s+p

return s

 m=10

s=sum(m)

print(s)

案例分析:

实例1中:m,p,s变量都是局部变量。关于局部变量的作用域,需要注意:

函数中定义的变阿玲只能在函数中使用,不能在其他函数中使用。同时,一个函数中也不能使用其他函数中定义的变量。各个函数之间是平行关系,每个函数都封装了一块自己的区域,互不相干。

形参变量是属于被调函数的局部变量,而实参变量是属于主调函数的局部变量。

允许在不同的函数中使用相同的变量名,它们代表不同的对象,分配不同的存储单元,互不干扰,也不会发生混淆。实例1中sum函数的m,s变量与主程序的m,s变量同名,但他们是不同的作用域。

全局变量

概念:如果一个函数内部要用到主程序的变量,那么可以在该函数内部声明这个变量为global变量,这样函数内部使用的这个变量就是主程序变量。当在函数中改变了全局变量的值时,会直接影响主程序中这个变量的值。

实例2:

def fun(x):

    global y

    y=0

    x=0

 x=1

y=2

fun(x)

print(x,y)

案例分析:

在fun函数中使用了global y语句声明fun函数中使用的y不是fun函数的y变量(不是局部变量),而是主程序中的y变量(是全局变量)。

程序运行结果:

1  0

二、局部变量和全局变量同名下的应用 

局部变量和全局变量可以同名,但即使同名,局部变量的作用域也是在本函数内部,作用域范围不变。

实例3:

def fun(x, y) :

    print("In fun:",x,y)

x=1

y=2 

x=100

y=200

fun(x,y)

print(x,y)

案例分析:

fun函数中的d形式参数x,y属于局部变量,作用域仅为本函数内部。Fun函数在被调用时,x的值为100,y的值为200,因此,在fun函数内执行print语句,输出x的值为100,y的值为200。随后x和y的值在fun函数内被修改为1和2。但1和2的值只在fun函数内有效,出了fun函数,x和y的值仍是100和200.

程序运行结果:

In fun:100 200

100 200

三、多个函数中使用共同的全局变量

当多个函数中使用共同的全局变量时,是对同一个全局变量进行访问和修改。

实例4:

def A(x):

    global y

    y=0

    x=0

 def B(x):

    global y

    y=10

    x=0

x=1

y=2

A(x)

B(x)

print(x,y)

案例分析:

x和y的初值为1,2,在A函数中,声明y是全局变量,修改y的值为0,此时全局变量y的值从2修改为0,但x为局部变量,在函数A内部修改x的值,

不会影响函数外x的值。同理,在B函数中,声明y是全局变量,修改y的值为10,此时全局变量y的值从0修改为10,但x为局部变量,在函数B内部修改x的值,不会影响函数外x的值。

程序运行结果:

1  10

四、随堂练习

案例描述:

用一个函数输入省份和城市,用另外一个函数显示。

案例分析:

设计一个输入函数enter,用于输入province(省份)和city(城市),用另外一个函数show显示他们。由于enter要返回province、city这两个数据,暂时还没有办法做到,因此把province和city设为全局变量。

代码示例:

def enter():

    global province

    global city

    province=input("省份:")

    city=input("城市:")

 

def show():

    print("省份:"+province+" 城市:"+city)

province=""

city=""

enter()

show()

下载本文
显示全文
专题