数据类型的可变与不可变

本文探讨了Python中的数据类型,如数字、列表、元组、字符串、字典和集合的可变与不可变特性。在Python中,数字和元组是不可变的,而列表、字符串和字典是可变的。通过变量赋值和增强赋值语句,文章解释了可变对象和不可变对象的区别,特别是在操作如添加元素时的行为差异。对于列表,总结了三种添加元素的方法:L=L+[i],L.append(i),L+=[i],并分析了它们的内存管理和性能影响。
摘要由CSDN通过智能技术生成

在进入主题之前,我们先来看一下下面这段文字,对python核心类型是否“可变”有一个基础的印象。
• 数字 —— 不可变
• 列表 —— 有序、可变
• 元组 —— 有序、不可变
• 字符串 —— 无序、可变
• 字典 —— 无序、可变
• 集合 —— 有序、不可变

1、 变量与赋值

➢ 变量其实就是一个指针,指针的内容是一个存储地址
(address),指向相对应的值所在的存储块。
➢ “=”表示赋值(assignment)
Alt

  • (1)当赋值号右边为一个值时(“a = 1”)
    当我们对变量a进行赋值时,Python解释器做了两件事:
    ①在内存中创建了一个空间,内容是等号“=”右边的数值1;
    ②在内存中创建了一个名字为a的变量,并将其指向了保存1的空间。
  • (2)当赋值号右边是一个表达式时(“a = a + 2”)
    当我们在程序中写上“a = a + 2”这个语句时,Python解释器也做了两件事:
    (1)在内存中创建另外一块空间,保存a所指的数值加上数值2的结果,即数值3;
    (2)将变量a由指向原来数值1变为指向新数值3,即id发
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值