版权声明:本文为博主原创文章,未经博主允许不得转载。不准各种形式的复制及盗图 https://blog.csdn.net/qq_26816591/article/details/88219604
# 返回值
# 返回给函数调用者
# 作用:1.结束函数 2.返回某个对象
def add(*args):
sum = 0
for i in args:
sum += i
print(sum)
return sum
a = add(4, 5, 8, 75, 6, 8, 4, 5, 5)
print(a) # 如果没有return sum 就会显示打印的是None
# 注意
# 1.函数如果没有return 会默认返回None
# 2.return 多个对象,那么会把所有的对象封装成一个元组返回
# 3.return 结束函数
# 作用域
if True:
x = 3
print(x)
def f():
b = 10
# print(b) # 不在作用域 NameError: name 'b' is not defined
# L:local 局部作用域,即函数中定义的变量
# E:enclosing 嵌套的父级函数的局部作用域,即包含此函数的上级函数的局部作用域,但不是全局的
# G:globa 全局变量 就是模块级别定义的变量
# B:built-in, 系统固定模块里面的变量,比如int bytearray等。搜索变量的优先级顺序依次是:局部作用域>外层作用域>当前模块中的全局作用域>python内置作用域
# 也就是LEGB
要点:
- 返回值,返回给函数调用者
- 作用:结束函数、返回某个对象
- 如果没有返回值,则调用函数会默认返回None
- 如果返回 类似:return 1,2,3,4 多个对象,则会把返回对象封装成一个元组返回
- 注意变量作用域规则:LEGB 详情查看代码注释