Python基础
1.深拷贝,浅拷贝
深拷贝,就是复制整个列表,是彻底复制,复制后的列表和原列表互相独立,改一个参数是不影响另外一个列表的。
浅拷贝就是抄表面,改列表中的任何一个数,另外一个列表也会被改变。
Python语句:
浅拷贝,a=[1,2,[3,4]],b=a.copy(),b[2][0]=33,a也变成了[1,2,[33,4]],
深拷贝,import copy;
b=copy.deepcopy(a)
b的外层和里面的子列表都是新的,不管b怎么变,a的内容都不会变
2.is和==的区别
a=10,b=10,
a==b,内容一样,True
a is b?True
a=[1,2,[3,4]],b=[1,2,[3,4]],
a is b?False
a==b True
==比较的是两个对象的值是否相等
is比较的是两个变量是否指向内存中的同一个对象
内容相同的对象,身份不一定相等
身份相等的对象,内容一定相同
3.变量和对象的区别
a=10,a是变量,10是对象
对象是真实存在的数据(在内存里)
变量是指向对象的标签,名称
深拷贝,就是复制整个列表,是彻底复制,复制后的列表和原列表互相独立,改一个参数是不影响另外一个列表的。
浅拷贝就是抄表面,改列表中的任何一个数,另外一个列表也会被改变。
Python语句:
浅拷贝,a=[1,2,[3,4]],b=a.copy(),b[2][0]=33,a也变成了[1,2,[33,4]],
深拷贝,import copy;
b=copy.deepcopy(a)
b的外层和里面的子列表都是新的,不管b怎么变,a的内容都不会变
2.is和==的区别
a=10,b=10,
a==b,内容一样,True
a is b?True
a=[1,2,[3,4]],b=[1,2,[3,4]],
a is b?False
a==b True
==比较的是两个对象的值是否相等
is比较的是两个变量是否指向内存中的同一个对象
内容相同的对象,身份不一定相等
身份相等的对象,内容一定相同
3.变量和对象的区别
a=10,a是变量,10是对象
对象是真实存在的数据(在内存里)
变量是指向对象的标签,名称
全部评论
相关推荐
查看14道真题和解析 点赞 评论 收藏
分享
查看30道真题和解析 点赞 评论 收藏
分享