变量的作用域

发布时间:2026/7/20 18:26:09
变量的作用域 变量的作用域是指变量在哪些地方可以被访问到。局部变量在函数内部定义的变量只能在函数内部使用。def test():x 10 # 局部变量print(x)test()print(x) # 报错x 在函数外部访问不到全局变量在函数外部定义的变量可以在任何地方访问。x 10 # 全局变量def test():print(x) # 可以访问全局变量test()print(x) # 也可以访问如果在函数内部要修改全局变量需要用global声明x 10def test():global x # 声明 x 是全局变量x 20 # 修改全局变量test()print(x) # 20如果不加global,在函数内部修改全局变量会被Python当成创建了一个新的局部变量不会影响到外部的全局变量。九、一个我踩过的坑忘记写括号这是新手最容易犯的错误我刚开始学函数的时候有一次这样写def say_hello():print(“你好”)say_hello # 忘记加括号了运行后什么都没有输出也没有报错什么都没有发生。我当时还以为是Python坏了后来才发现调用函数必须加括号。say_hello只是函数本身say_hello()才是调用它。十、综合示例把体温检测改写成函数把之前写的体温检测程序改写成函数加上说明文档和嵌套调用这个函数负责获取体温返回给调用者def get_temperature():“”获取用户输入的体温:return: 浮点数体温“”return float(input(“请测量并输入您的体温”))def check_temperature(temp, standard37.5):“”判断体温是否正常:param temp: 体温值:param standard: 标准温度默认37.5:return: True 表示正常False 表示异常“”return temp standarddef print_result(temp, is_normal):“”打印体温检测结果:param temp: 体温值:param is_normal: 是否正常“”print(f体温测量中您的体温是{temp}度)if is_normal:print(“体温正常请进”)else:print(“需要隔离”)def main():print(“欢迎来到辽宁请出示您的健康码以及72小时核酸证明并配合测量体温。”)temp get_temperature()result check_temperature(temp)print_result(temp, result)main()一次定义可以反复使用每个函数只做一件事代码清晰易读。以后如果想修改体温检测的逻辑只需要改对应的函数就行了。小结今天学的东西整理成一张速查表知识点 作用 示例def 定义函数 def say_hello():参数 让函数接收外部数据 def greet(name):return 返回值给调用者 return a bNone 表示空值 return None说明文档 解释函数的作用 “” 函数说明 “”嵌套调用 函数内部调用另一个函数 def a(): b()局部变量 函数内部定义只能在内部使用 x 10 在函数内全局变量 函数外部定义任何地方可用 x 10 在函数外global 在函数内修改全局变量 global x什么时候用函数一段代码在多个地方重复出现 → 封装成函数