python3 List常用函数详细解释

python中 列表(list)的copy办法

1.先解决一个报错。

复制代码
a =[1,2,3]
b =a.copy
print( b)

报错:

复制代码
AttributeError: 'builtin_function_or_method' object has no attribute 'copy'

这是因为a.copy语句并没有执行copy函数,而是把a.copy这个函数赋值给了b。执行如下语句:

复制代码
c =b()
print( c)
#c =[1,2,3]

这个错误太经典了,核心就是要记住,所有的函数的执行都需要()指示。

2.根据help( list)的指示,copy函数,将生成一个浅复制。具体的表现如下:

初始化:

复制代码
original_list =[1, 2, [3, 4]]
shallow_list =original.copy()
>>>shallow_list
>>>[1, 2, [3, 4]]#看起来一模一样

分别进行两次,赋值,检查另一个对象:

复制代码
>>>shallow_list[0] =100
>>>original_list
>>>[1, 2, [3, 4]] #没有变化

我们更改浅拷贝的第二层元素的时候:

复制代码
>>> shallow_list[2][3] =300
>>>orignial_list
>>>[1, 2, [300, 4]]#我们没有操作过original_list,但是它改变了

网上通常的讲法说是因为copy传递的是地址,而不是内容。但是我感觉没这么简单。如果传递的是内容,那么修改第一次的时候,original_list就应该改变了。但是并没有,机制还是有待发掘的,留坑。(优点应该是占内存少)

3。深复制,没有理解困难。就是完全复制到另一块内存上的空间。两者之间不会有任何影响。

4.其他list 的基本函数( help( list)),留坑

相关推荐
爱笑的眼睛118 分钟前
文本分类的范式演进:从统计概率到语言模型提示工程
java·人工智能·python·ai
YCOSA202513 分钟前
雨晨 Win7SP1 企业版 IE11 VCDX x64 极速 7601.28064
windows
星川皆无恙13 分钟前
基于知识图谱+深度学习的大数据NLP医疗知识问答可视化系统(全网最详细讲解及源码/建议收藏)
大数据·人工智能·python·深度学习·自然语言处理·知识图谱
Tipriest_19 分钟前
旋转矩阵,齐次变换矩阵,欧拉角,四元数等相互转换的常用代码C++ Python
c++·python·矩阵
周杰伦_Jay21 分钟前
【Go/Python/Java】基础语法+核心特性对比
java·python·golang
小鹿学程序26 分钟前
jdk配置完之后java -version还是默认的jdk版本如何更改
java·开发语言·python
Pyeako31 分钟前
Python数据可视化--matplotlib库
python·matplotlib·数据可视化·画图·pylab
m0_7048878935 分钟前
Day 35
python·深度学习·机器学习
吕了了40 分钟前
给U盘一个PE to Go:将微PE系统直接释放到U盘
运维·windows·电脑·系统
华研前沿标杆游学41 分钟前
参观深圳比亚迪总部,探索科技,感受中国“智”造魅力
python