大一新生听得头晕了
老师声音真好听！
有
课间休息
打卡第五天
打卡打卡
到这里，数据类型相关应该讲完了吧
会绑定到同一个列表
啃臭+D 直接复制当前行到下一行
1
为什么要这样打印
为什么括号里要写俩遍
做出区别，便于理解
老师打字再好点就更完美了
append 列表新增元素
浅拷贝
0hh
为什么我新增元素出现报错了
此时不遵循代码从上往下执行的原则了？
python的变量是引用，和C的变量并不相同
就是说这个赋值不是直接给值，而是给值的地址
引用
引用其实就是对指针的一种封装
整形为啥不行
相当于两个指针指向同一个地方
这是赋值内存地址？
只是列表这样嘛
引用类型内存地址共享吗？
列表是可变对象，赋值 (=) 是传递引用，两个变量会共享同一个对象 整数是不可变对象，赋值 (=) 是创建新副本，修改一个不会影响另一个
用id(li)查看一下内存地址就知道了
那如果是改变li2的话li1会变吗
指针指向同一个内存资源，你修改了它就是修改了内存资源，当然都变了
这里底层逻辑简单说，是计算机储存的列表一直只有一个，赋值只是新加了一个名字，并没有重新分配资源拷贝。
那我没有对象怎么办
学到这都花了几天啊
类似局部变量，全局变量
如果原对象中包含可变对象（如列表、字典等），浅拷贝后的对象和原对象会共享这些可变对象的内存地址。
可是如果li2 = li + li的话li2的值就不受li的影响了，这是为什么呢
你们可以看见我的弹幕不
为什么我报错了
为啥copy要写两遍
第一个模块名，第二个函数名
报错可能是因为没在前面写“import copy”
第一个copy是调用库copy，第二个copy是库copy中的copy函数，只是名称一样而已
切片也可以创建副本吧
520捏~
不对吧，按照从上往下运行，copy后才添加元素，肯定li新增了原色，li2没有新增啊
这里的浅拷贝，因为外层是不可变数据类型整型，所以不会改变,,内层是可变数据类型，拷贝后的内层是对原内存地址的引用
好神奇
不用打印了，我信
修改元素，两个列表也不会一起变化
为了节省内存，提高对象利用率
这里要是没记住，以后虫子有的抓
为啥呢
这个没懂
可以理解为：浅拷贝赋值的时列表LI和列表LI2 ，这两个列表的本体id 是不同的，但是内部的元素id 是相同的 我觉得
大家都是什么专业的
工程测绘
数媒
美术
li3
数科与大数据
就是只复制最基础的数字字符串，其他复杂的列表集合都是原样
有没有数据完全不共享？
数据全不共享
深拷贝：全部拷贝，个人理解
什么是模块
大抵是指，浅拷贝略过了一些较难拷贝的部分，所以速度更快
模块就像一个工具包 里面放了很多工具给你用
这个深拷贝和赋值有什么区别啊
有人吗
1
可以理解为赋值是实时更新，深拷贝只保留你拷贝时的数据
那如果有三层嵌套呢
li 【3z】这个咋来的
就是li这个列表的第四个元素啊……这咋还要返工听前面么
那为什么要深拷贝，直接当成两个独立的列表不就可以了吗
可以在改变内层内存地址难度的意义上理解深浅。浅拷贝由于太浅，无法改变内存地址。深拷贝则可以
但深浅拷贝都可以改变外层内存地址
所以说深拷贝是不是相当于一个快照（或是备份）
用的到，相当于重新新指针、新地址，避免指针调用乱
深拷贝一刀两断，浅拷贝藕断丝连
浅拷贝：保持男女关系，互不影响家庭
6666
好形象啊
诸位都是人才
太有生活了
很好的教学
为什么我打印set出来瑟图二字，我没经常打这个啊
你们一天看多少呀
浅拷贝拷贝值和引用本身，深拷贝拷贝值和引用所指向空间的值,这样准确，但可能对小白不太友好
地址发生改变了啊，之前不是这个地址，
每次运行是新的列表
数据改变，不代表保存地址改变
如果改的很大，地址不够用咋办
那干嘛用呢
在这个内存地址里改变变量的值
666
看完这课该睡了
tuple为啥不算？
这里的地址都是起始地址
元祖不可修改呀
为啥元组不行啊
元组不可变啊，元组只能查询不能修改
元组不能进行修改
因为元组tuple不能被插入,所以离婚了，不要它了。这样总能记住了不~~~~~
内存不够怎么办，一个很长字符串
哈哈哈，可耐
就相当于你给文件重命名了一下，位置没有动
集合不是可以添加元素ma
听完就不记得前面的了，大家是不是这样
学习嘛，学完还得习，熟能生巧的事，坚持吧
对啊
记笔记就好了
可变对象可以扩展，不可变对象不可以扩展
1.5倍看的, 完全没压力
2025年8月5日，位置公司工位 学习python
不应该是赋值会改变地址，然后增删改不会改变地址吗
干嘛用呢
感觉这些名字取得让人理解起来有点困难。内存变的叫做不可变对象，内存不变的叫做可变对象
就是因为内存改了会变，所以才叫不可变对象，没问题，多理解理解就行
对于可变对象，重新赋值也会改变内存空间