《Python 函数》07 - 变量作用域

2019-01-18  本文已影响8人  波波课堂

相关文章

01 - 课程介绍及概述(挖坑待填)
02 - 函数调用
03 - 定义函数
04 - 函数参数
05 - 函数返回值
06 - 练习:日历
07 - 变量作用域
08 - 参数扩展
09 - 可变参数

变量只有在自己的作用域中才能使用,变量的作用域就是指,可以在代码的哪些地方使用这个变量。注意不要出错哦~

由于简书在 Markdown 编辑模式下无法插入视频,所以放了视频链接:
《Python 函数》07 - 变量作用域(视频)

函数调用 - 课堂笔记

''' 变量的作用域是指, 在程序的哪些地方可以使用变量 '''
# 使用变量之前必须先定义
x = 5
print(f"x = {x}")
# print(y)  # 不定义就使用肯定会报错, 比如这个变量 y

''' 在函数内定义的变量叫做局部(local)变量, 在函数外定义的变量叫做全局(global)变量 '''
i = 12  # 全局变量 i
def func1():
    # 变量 j 是一个局部变量
    j = 10
    # 变量 i 是一个全局变量
    print(i + j)

''' 局部(local)变量, 只能在函数内使用或修改, 在函数外不可以使用或修改 '''
def func2():
    # 局部变量 k 在函数内, 想怎么用怎么用
    k = 26
    print(k + 5)
    k += 12
# print(k)  # 在函数外, 局部变量 k 就无法使用, 会报错哦~

''' 全局(global)变量, 只能在函数内使用, 不能在函数内修改 '''
s = 22  # 全局变量 s
def func3():
    # 可以在函数内使用全局变量 s
    print(s)
    r = s + 15
# 不可以在函数内修改全局变量 s
# s = 0  # 会出问题哟~

m = 0
def func4():
    # 这行赋值代码会被认为: 在函数内定义了, 与全局变量 m 同名的局部变量
    # 所以 m 在这里是一个新的局部变量, 与函数外的全局变量 m 没有任何关系
    m = 12

''' 如果一定要在函数内修改全局变量的值, 需要使用 global 关键字 '''
n = 13
def func5():
    # 在函数内要修改全局变量 n 的值, 需要先使用 global 关键字声明
    global n
    # 之后再使用变量 n, 就是直接操作全局变量 n
    n = 22  # 修改全局变量 n 的值

''' 在函数中, 参数也是局部变量 '''
def func6(a, b):
    # 给函数定义的参数也属于局部变量, 只能在函数内使用
    print(a, b)
# print(a, b)  # a 和 b 是局部变量, 在这里使用会报错哦~

''' 小知识 '''
def func8():
    ''' func8 函数的文档注释内容 '''
    print("HAHA")
d = func8.__doc__  # 可以用这种方式获取一个函数的文档注释内容 (文档, document)

函数调用 - 随堂练习

函数调用 - 课件

蟹蟹童鞋们的支持哟~

(The End)

上一篇 下一篇

猜你喜欢

热点阅读