day06

一 深浅拷贝

例:ls = [1, 'abc', [10]]

1.值拷贝:s1 = ls    # ls1直接将ls中存放的地址拿过来,》ls内部的值发生任何变化,ls1都会随之变化。

2.浅拷贝:ls2 = ls.copy()  # ls内部的可变类型值发生改变,ls2会随之变化3.
3.深拷贝:ls3 = deepcopy(ls)  # 新开辟列表空间,ls列表中的不可变类型的地址直接拿过来,但是可变类型的地址一定重新开辟空间, ls内部的所有类型的值发生改变,ls3都不会随之变化

二 元组类型

1.定义:元组:可以理解为不可变的列表。

    注意:值可以为任意类型

2.常用操作

 1.索引取值:正反方向

 2.运算(拼接):元组相加

 3.长度:len()

 4.切片:正反方向

 5.成员运算:in |not in

  注意:False == 0, 元组中如果有0或False,该结果都是True

6.for 循环

 7.例:

print(t1.count(0)) # 对象0在元组中出现的次数

print(t1.index(123, 4, len(t1))) # 对象0在区间4~末尾第一次出现的索引

三 字典

1.用map映射创建字典

2.用关键字赋值方式

3.字典的操作:

 1.增: 字典名[key] = 值 => key已存在就是修改值,不存在就是新增值

 2.改

  3.查:字典名[key]#只能查找已有的key,没有崩溃

 4.删

 5.清空

四 集合

 1.空集合:不能用{},因为用来标示空字典

  例:

s = set()
print(s, type(s))

2.概念:

 

#1.set为可变类型 - 可增可删
# 2.set为去重存储 - set中不能存放重复数据
# 3.set为无序存储 - 不能索引取值
# 4.set为单列容器 - 没有取值的key
# 总结:set不能取值

3.增:

4. 删

5 set运算:

  1.交集:两个都有 &

  2.合集:两个的合体 |

  3.对称交集:抛出共有的办法的合体 ^

  4.差集:独有的

 5. 比较:前提一定是包含关系

posted @ 2019-04-18 23:23  呼吸决定丶  阅读(95)  评论(0)    收藏  举报