Python中函数的调用与变量的作用域

Python中函数的调用与变量的作用域
复习回顾
- 函数的作用
- 函数的定义
- 程序的入口
本节新知
函数的返回值
函数通常都有返回值,通过return关键字来进行返回,若函数无返回值,则返回None。return后的语句都不会被执行,return返回值可以有多个。
1
2
3
4
5def my_add(a, b):
sum = a + b
return sum
print(sum)
my_add(2, 4)该程序运行后无任何反应,由于print()函数前有return语句,则print语句不可能被执行。且my_add函数调用后返回了6,但是并没有打印这个值,此时程序中的my_add(2, 4)相当于整数6,但是这个6并没有被打印。
1
2
3
4
5
6def my_add(a, b):
sum = a + b
return a, b, sum
first, second, third = my_add(2, 4)
print(f"第一个数字是{first},第二个数字是{second},这两个数的和为{third}")函数调用时传递参数可以为多个,且返回值也可以是多个,Python中赋值可以多个变量同时进行赋值
全局变量
全局变量即为程序中函数外部定义的变量
1
2
3
4
5
6
7
8
9
10a = 1
b = 2
c = 6 # 此处定义的变量a和b和c即为全局变量
def my_add(x, y):
print(c) # 函数内部可以读取全局变量的值
c = 100
sum = x + y
print(my_add(a, b))
print(c) # 函数内部不可修改全局变量的值局部变量
局部变量即为程序中函数内部定义的变量
1
2
3
4
5
6
7
8a = 1
b = 2
def my_add(x, y):
c = 100 # 此处定义的变量c即为局部变量
sum = x + y
print(my_add(a, b))
print(c) # 报错,函数外部不可以读取局部变量的值拓展
1
2
3
4
5
6a = 2
def func():
# a+=1
print(a)
func()当程序直接运行时相当于函数内部读取全局变量的值,是可以读取的。但是当a+=1的时候,相当于重新定义了一个局部变量a,然后将a的值增加1,但是此时的a已经变成局部变量了,且变量a目前没有被赋值,所以程序报错。
课后作业
复习Python中内置的常见函数
评论
评论插件加载失败
正在加载评论插件