news 2026/4/18 5:31:49

python变量详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
python变量详解

好,这一题是Python 入门到进阶都绕不开的核心
我会按“是什么 → 怎么用 → 底层原理 → 易错点 → 面试/实战总结”给你一篇真正把变量讲透的说明。


Python 变量详解


一、Python 中的变量是什么?

一句话定义:

Python 变量本质上是“对象的引用”,而不是装数据的盒子。

a=10

含义是:

  • 创建一个整数对象10
  • 变量a指向(引用)这个对象

二、变量的创建与赋值

1️⃣ 基本赋值

x=5name="Alice"

📌Python 不需要声明类型


2️⃣ 动态类型特性

a=10a="hello"
  • 合法
  • 变量类型随对象改变

3️⃣ 多重赋值

a=b=c=0

⚠️ 注意:都指向同一个对象


4️⃣ 解包赋值(非常常用)

x,y=1,2a,b=b,a# 交换变量

三、变量命名规则

合法规则

  • 字母、数字、下划线
  • 不能以数字开头
  • 区分大小写
  • 不能使用关键字
importkeyword keyword.kwlist

命名规范(PEP 8)

  • 变量 / 函数:snake_case
  • 常量:UPPER_CASE
total_score=90MAX_SIZE=100

四、变量与对象的关系(重点)

1️⃣ 查看对象身份

a=10b=aid(a)==id(b)# True

👉ab指向同一个对象


2️⃣ 可变对象 vs 不可变对象

不可变对象
  • int
  • float
  • str
  • tuple
a=10a+=1# 新对象

可变对象
  • list
  • dict
  • set
lst=[1,2]lst.append(3)# 原对象修改

五、变量修改的本质差异(高频坑)

示例对比

a=10b=a a+=1
  • a指向新对象11
  • b仍指向10
lst1=[1,2]lst2=lst1 lst1.append(3)
  • lst1lst2都变了

六、作用域(Scope)

1️⃣ LEGB 规则

查找顺序:

Local → Enclosing → Global → Built-in

2️⃣ global / nonlocal

x=10deffunc():globalx x=20
defouter():x=10definner():nonlocalx x=20

七、变量删除

a=10dela
  • 删除的是引用
  • 对象是否销毁由 GC 决定

八、浅拷贝 vs 深拷贝(变量相关)

importcopy copy.copy(obj)# 浅拷贝copy.deepcopy(obj)# 深拷贝

📌 与“可变对象引用”强相关


九、常见误区总结(非常重要)

❌ 1. Python 变量是盒子

错,是引用

❌ 2. = 是拷贝

错,是绑定

❌ 3. 函数参数是引用传递

准确说法:对象引用传递(call by object reference)


十、面试一句话总结

Python 变量本质是对象引用,赋值只是绑定关系的改变,不可变对象会产生新对象,而可变对象在原地修改。


十一、速记口诀

名不存值,名指对象;
可变改自身,不可变换新家。


如果你愿意,我可以下一步直接带你:

你是Python 新手,还是准备面试 / 写工程

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 20:00:55

莫凡电视:全国地方台全覆盖 核心技术解析

各位技术爱好者,莫凡电视主打全国省市县地方台全收录,依托硬核技术实现信号稳、播放顺,适配智能电视、机顶盒等终端,体验拉满。 采用 IPTVDTMB 双模架构,搭配专用多协议解码器,精准捕捉各地数字信号&#…

作者头像 李华
网站建设 2026/3/28 8:35:07

AI视角下:非农周财经事件与保证金调整的深度剖析

摘要:本文通过运用AI大数据分析模型与多源数据融合技术,结合历史经济数据、市场动态信息以及实时舆情监测数据,分析非农周财经事件及保证金调整对金融市场的影响。一、本周财经事件1. 美非农就业数据本周五非农就业数据发布呈现密集态势。借助…

作者头像 李华
网站建设 2026/4/16 2:15:28

【课程设计/毕业设计】基于SSM+JSP的商铺租赁管理系统的设计与实现基于ssm的商铺租赁管理系统的设计与实现【附源码、数据库、万字文档】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华