Python
  • 01、基础篇
    • Python基础篇-001. Python简介
    • Python基础篇-002. Hello World
    • Python基础篇-003. 变量类型(一)
    • Python基础篇-004. 常量
    • Python基础篇-005. 运算符
    • Python基础篇-006. 条件语句
    • Python基础篇-007. 循环语句
    • Python基础篇-008. 变量类型(二)
    • Python基础篇-009. 函数(一)
    • Python基础篇-010. 函数(二)
    • Python基础篇-011. 变量作用域
    • Python基础篇-012. 自定义类(一)
    • Python基础篇-013. 自定义类(二)
    • Python基础篇-014. 模块
    • Python基础篇-015. 异常处理
  • 02、进阶篇
    • Python进阶篇-001. 文件IO
    • Python进阶篇-002. main.py
    • Python进阶篇-003. init.py
    • Python进阶篇-004. all
    • Python进阶篇-005. private
    • Python进阶篇-006. lambda表达式
    • Python进阶篇-007. 推导式
    • Python进阶篇-008. 迭代器
    • Python进阶篇-009. 生成器
    • Python进阶篇-010. 多线程
    • Python进阶篇-011. 数据处理基础函数(一)
    • Python进阶篇-012. 数据处理基础函数(二)
    • Python进阶篇-013. 包管理(一)
    • Python进阶篇-014. 包管理(二)
    • Python进阶篇-015. 包管理(三)
    • Python进阶篇-016. 包管理(四)
    • Python进阶篇-017. requirements.txt
    • Python进阶篇-018. venv
    • Python进阶篇-019. 头部注释
    • Python进阶篇-020. 优雅传参
    • Python进阶篇-021. 连接MySQL
  • 03、实践篇
    • Python实践篇-001. GitBook小工具(一)
    • Python实践篇-002. GitBook小工具(二)
Powered by GitBook
On this page
  • 一、创作声明
  • 二、前言
  • 三、变量作用域
  • 四、global关键字
  • 五、写在最后
  1. 01、基础篇

Python基础篇-011. 变量作用域

[toc]

一、创作声明

本Python系列课程,是一门初级课程。目标是想让大家能在Python方面,实现从零基础到入门。这个课程的特殊性在于,这将是一门由我来主导教学思路,由ChatGPT来主导教学内容的课程。我认为这将会是一种非常有意思的尝试。

二、前言

本章学习目标:

  1. 了解Python中的变量的作用域,并学会使用

  2. 了解global关键字

三、变量作用域

在Python中,变量的作用域指的是变量在程序中可被访问的范围。Python中有四种不同的作用域:全局作用域、局部作用域、嵌套作用域和内置作用域。

1、全局作用域:在函数外部定义的变量具有全局作用域,可以在整个程序中的任何地方被访问。例如:

x = 10

def func():
    print(x)

func()  # 输出:10

2、局部作用域:在函数内部定义的变量具有局部作用域,只能在函数内部被访问。例如:

def func():
    y = 20
    print(y)

func()  # 输出:20
print(y)  # 报错:NameError: name 'y' is not defined

3、嵌套作用域:当函数嵌套定义时,内部函数可以访问外部函数的变量,但外部函数不能访问内部函数的变量。例如:

def outer():
    z = 30
    
    def inner():
        print(z)
    
    inner()  # 输出:30

outer()
print(z)  # 报错:NameError: name 'z' is not defined

4、内置作用域:Python中有一些内置的函数和变量,它们具有内置作用域,可以在任何地方被访问。例如:

print(len("hello"))  # 输出:5

四、global关键字

需要注意的是,当在函数内部定义一个与全局变量同名的变量时,该变量会被视为局部变量,而不是全局变量。如果需要在函数内部修改全局变量的值,可以使用global关键字来声明。例如:

x = 10

def func():
    global x
    x = 20
    print(x)

func()  # 输出:20
print(x)  # 输出:20

五、写在最后

更多技术分享,点击传送门:https://github.com/maxiaolu66/profile

PreviousPython基础篇-010. 函数(二)NextPython基础篇-012. 自定义类(一)

Last updated 1 year ago