网站首页 > 技术文章 正文
在 Python 里,变量的作用域指的是变量可被访问的范围。Python 中有两种主要的变量作用域,分别是全局变量和局部变量,下面对它们的一些分享。
全局变量
全局变量是在函数外部定义的变量,其作用域为整个程序,在程序的任何地方都可以访问。以下是一个简单的示例:
python
# 定义全局变量
global_variable = 10
def print_global_variable():
print("全局变量的值是:", global_variable)
print_global_variable() # 输出: 全局变量的值是: 10
在这个例子中,global_variable 是全局变量,在函数 print_global_variable 里可以直接访问它。
局部变量
局部变量是在函数内部定义的变量,其作用域仅限于定义它的函数内部,在函数外部无法访问。下面是一个局部变量的示例:
python
def print_local_variable():
# 定义局部变量
local_variable = 20
print("局部变量的值是:", local_variable)
print_local_variable() # 输出: 局部变量的值是: 20
# 下面这行代码会报错,因为 local_variable 是局部变量,在函数外部无法访问
# print(local_variable)
在这个例子中,local_variable 是局部变量,只能在 print_local_variable 函数内部访问。
全局变量和局部变量的异同
相同点
- 二者都是用来存储数据的,并且都有自己的名称和对应的值。
不同点
- 作用域:全局变量的作用域是整个程序,而局部变量的作用域仅限于定义它的函数内部。
- 生命周期:全局变量的生命周期是整个程序的运行期间,而局部变量的生命周期从函数被调用时开始,到函数执行结束时结束。
避坑分享
1. 在函数内部修改全局变量
如果要在函数内部修改全局变量的值,需要使用 global 关键字。示例如下:
python
global_variable = 10
def modify_global_variable():
global global_variable
global_variable = 20
modify_global_variable()
print("修改后的全局变量的值是:", global_variable) # 输出: 修改后的全局变量的值是: 20
2. 避免局部变量和全局变量同名
当局部变量和全局变量同名时,在函数内部使用的是局部变量,而不是全局变量。示例如下:
python
global_variable = 10
def print_variable():
global_variable = 20
print("函数内部的变量的值是:", global_variable)
print_variable() # 输出: 函数内部的变量的值是: 20
print("全局变量的值是:", global_variable) # 输出: 全局变量的值是: 10
综上所述,在使用全局变量和局部变量时,要清楚它们的作用域和生命周期,避免因变量名冲突或者未正确使用 global 关键字而引发错误。
感谢大家对《新手学Python避坑,学习效率狂飙!》系列的点赞、关注和收藏今天这编是第十四个分享,前面还有十三个,大家可以关注下。
猜你喜欢
- 2025-06-09 Python并发编程,如何用多线程、多进程、异步编程提升百倍效率?
- 2025-06-09 24-4-Python多线程-进程操作-案例
- 2025-06-09 还不会安装python?快来看看怎么快速安装
- 2025-06-09 python异步编程之asyncio(百万并发)
- 2025-06-09 使用Python进行并发编程(python支持并发吗)
- 2025-06-09 15个Python 编码技巧,你会用吗?(python编码规则)
- 2025-06-09 python GIL全局解释器锁原理、功能及应用示例
- 2025-06-09 Python中的多进程详解,让你的程序更快更强!
- 2025-06-09 看一看,Python这四种作用域你都知道吗?
- 2025-06-09 Python多进程学习与使用:全面指南
- 265℃Python短文,Python中的嵌套条件语句(六)
- 264℃python笔记:for循环嵌套。end=""的作用,图形打印
- 263℃PythonNet:实现Python与.Net代码相互调用!
- 258℃Python实现字符串小写转大写并写入文件
- 257℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 117℃原来2025是完美的平方年,一起探索六种平方的算吧
- 97℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 90℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)