用元组到深浅拷贝

什么是元组(了解):只可取不可更改的列表

1.作用:元组于创建之初就被写死了

2.定义方式()内用逗号隔开多个元素(可以为任意数据类型)

3.使用方式

1.索引取值

print(tup[0])

2.索引切片

print(tup[0:3])

3.for循环

for i in tup

print(i)

4.成员运算

print(0 in tup)

5.len长度

print(len(tup))

6.index

7.count

4.有序无序 有序

5.可变or不可变:压根不存在这一说

防止更改吗?

占用内存少--》写死了

?????????????????

字典

1.作用:储存多个数据,每个数据具有描述

2.定义方式:{}内用逗号隔开多个键key(不能为可变数据类型)值value(任意数据类型)对#散列表(#表)

3.使用方法

优先掌握

1.按key取值/按key修改值

2.添加至,沒有就添加,有就修改

3.for循環

4.成員運算

5.len長度

需要掌握

1.get

2.update

3.fromkeys

4.setdefault

4.有序无序:无序

5.可变or不可变

1.首先对key做了哈希处理,梅森旋转算法(生成伪随机数)

2.使用哈希函数对更改生成的序列(纯数字),对纯数字除9取余

?????????????????

什么是集合:交集/并集/补集/差集

∩∪

1.作用:1.进行上述运算2.去重3.乱序----》基于散列表实现的

2.定义方式:{}内以逗号隔开多个元素(不能为可变数据类型)

s={}#空字典

s=set()#空集合

黄色代表上面定义的变量未使用,而你又一次定义了

3.使用方法

#add()

pythoner.add('oscar')

#

pythoner.remove('oscar')#没有就报错

pythoner.discard('oscar1')#没有不报错

pythoner.pop()#随机删除

4.有序or无序:无序

5.可变or不可变:可变:kenya:

set={1,2,3}

print(id(set))

set.add(4)

print(id(set))

?????????????????

存值个数

存一个值:整型/浮点型/字符串

存多个值:列表/元组/字典/集合

有序or无序

有序:字符串/列表/元组(序列)有索引

无序:字典/集合

?????????????????

可变or不可变

可变:列表/字典/集合

不可变:整型/浮点型/字符串/元组

?????????????????

lt1=[1,2,3] lt2=[2,3,4]

拷贝:如果l2是l1的拷贝对象,则l1内部的任何数据类型的元素变化,则l2内部的元素也会跟着改变,因为可变类型值变id不变。

浅拷贝:如果l2是l1的浅拷贝对象,则l1内的不可变元素发生了改变,l2不变;如果l1内的可变元素发生了改变,则l2会跟着改变。

深拷贝:如果l2是l1的深拷贝对象,则l1内的不可变元素发生了改变,l2不变;如果l1内的可变元素发生了改变,l2也不会变,即l2永远不会因为l1的变化而变化。

转载于:https://www.cnblogs.com/jimGraymane/p/11529114.html

你可能感兴趣的:(用元组到深浅拷贝)