day7 总结

2018-11-14  本文已影响0人  学python的铁头娃

1.浅拷贝和深拷贝

1.import copy
copy.copy(对象) - 浅拷贝 (直接拷贝元素的值产生一个新的地址)
copy.deepcopy(对象) - 深拷贝(不会直接复制地址,而是将地址对应的值拷贝一份产生新的地址)
numbers1 = [1, 2, 3]
numbers2 = [10, 20, 30]
list1 = [numbers1, numbers2]

print('1.浅拷贝:')
list2 = list1.copy()
print('修改前list1:', list1)
print('修改前list2:', list2)
print('针对list1进行修改')
list1.append(111)
list1[0].append(100)
print('修改后list1:', list1)
print('修改后list2:', list2)

numbers1 = [1, 2, 3]
numbers2 = [10, 20, 30]
list1 = [numbers1, numbers2]
print('2.深拷贝')
list2 = copy.deepcopy(list1)
print('修改前list1:', list1)
print('修改前list2:', list2)
print('针对list1进行修改')
list1.append(111)
list1[0].append(100)
print('修改后list1:', list1)
print('修改后list2:', list2)

2.元祖

1.什么是元祖(tuple)
元祖就是不可变的列表。(有序,不可变)
有序 - 可以通过下标获取元素
不可变 - 不支持增、删、改

2.元祖的字面量: 通过小括号将多个元素括起来,多个元素之间用逗号隔开

3.获取元祖元素和列表获取列表回去列表元素一模一样

4.相关运算和列表一样
+, *, in/not in, len(), tuple(), max(), min()

5.元祖相关的方法: 只有列表中的count和index

3.字典

1.什么是字典(dict)
字典是python中内置的容器类的数据类型,可变,无序的。字典的元素是键值对

2.字典的字面量:使用大括号括起来,大括号中是键值对,多个键值对之间用逗号隔开
键值对- 键:值
键(key) - 不可变的;唯一的 (一般使用字符串作为key)
值(value) - 任何类型的数据

4.字典的增删改查

1.查(获取字典的值)
a.获取单个值
字典[key] - 获取字典中key对应的值 (注意:如果key不存在,会报错:KeyError)
字典.get(key) - 获取字典中key对应的值 (如果key不存在,不会报错,并且会返回一个默认值None)
None是python中的关键字,表示一个特殊值,(没有、空的意思)

b.遍历

2.增
(添加键值对)

dict1 = {'a': 100}
dict1['b'] = 200
print(dict1)
"""
字典1.update(序列) - 将序列中的元素转换成键值对,然后再添加到字典1中

注意:在这儿的序列要求是能够转换成字典的序列。序列中的元素是只有两个元素的小序列

当key值有重名的时候,会用序列中键值对对应的值,更新原字典的key对应的值

3.改(修改key对应的值)
字典[key] = 值 - 当key存在的时候,就是修改key对应的值.

4.删(删除键值对)

5.字典相关的运算和方法

1.字典不支持+和*

1. in 和 not in

key in 字典 - 判断字典中是否存在指定的key

上一篇 下一篇

猜你喜欢

热点阅读