目录
一、字典(dict)
字典是以键值对(key_vaule)的方式存在;两者是一种映射关系。
1.1 字典的创建
键值对({键 :值})
字典使用{}:
字典名 = {键 :值,键1:值1,键2 :值2,键3 :值3……}
代码:
grade = {'Chinese':99 , 'Math':100} print(grade) grade1 = {'Chinese':98 , 'Math':150 , 'English':99} print(grade1)
字典的键是唯一不可变的, 不可修改 ;字典的键可以是数字 , 字符串 。
字典值(value)可以是任意(Python支持的)数据类型
当字典中的键重复了,原有的值将会被覆盖掉
字典的输出
字典名[key] print(name['姓名'])
1.2 字典值的查询
字典与前面的有序序列的区别就是,字典不可以通过下标查询
通过键(key)查询
get :通过键名获得值 如果键不存在,就会返回None
语法格式:
字典名[key] 字典名.get(key)
示例:
name = {'姓名':"嫌水摸鱼" , '年龄':99 , '联系地址':"北极"} print(name['联系地址']) 北极 print(name.get('年龄')) 99 print(name.get('性别')) None
格式:
字典名.keys() 字典名.values() 字典名.items()
代码
print(name.keys()) #获得字典中所有的键 print(name.values()) # 获得字典中所有的值 print(name.items()) #获得字典中所有的键值对
1.3 字典值键值对的增加
格式:
字典名[key] = 值
当键存在时,将会修改原有的值 ,把原有的值覆盖掉
setdefault ( ) 方法
字典名.setdefault ( 键 ,值)
当键存在时,不会对其进行任何修改
当值没有进行传递时。会默认为None
代码:
name['性别'] = '男' print(name) name.setdefault('身高',178) print(name)
update( ) 方法
即可增加也可以修改,并且一次可以多个个值的增加
格式:
字典名.update({键 :值,键1:值1})
当键存在是,将对原有的值进行修改
代码:
name.update({'身高':179 ,'体重':73.5}) print(name) name.update({'身高':181}) print(name)
1.4 字典键值对的删除
pop 方法:删除指定的键
字典名.pop(key)
popitem( ) 删除一个键值对 (有些版本是删除最后一个)
字典名.popitem()
clear 清空字典
字典名.clear()
del
del 字典名[key]
本质:用更好的方式对数据进行存储 ,有可以对数据进行解释说明的内容;有较好的可读性。
二、集合(set)
在python中集合的概念跟中学数学集合的概念是一致的。
集合的特性:无序性 , 唯一性。
2.1 集合的创建
格式:
集合名 = {元素 , 元素 , 元素……}
集合的元素不可以是列表 , 集合的本身的可变的,但是集合里面的元素是不可变的。
创建空集合使用set()
示例:
A = {99 , '嫌水摸鱼' , 89 , True , ('天天向上' , 56)} print(A) {True, ('天天向上', 56), 99, '嫌水摸鱼', 89} B = {1 ,2 ,12 ,1 ,2 ,3 ,4 ,1 ,1,1,1,1} print(B) {1, 2, 3, 4, 12} c = set() print(type(c)) <class 'set'> D = set({'爸爸','爷爷','摩托'}) print(D) {'爷爷', '摩托', '爸爸'}
2.2 集合的增加与删除
add()方法
格式
集合名.add(元素)
代码:
E = {15 , 1 , 52 , 5 , 1 ,6} E.add(666) print(E) {1, 5, 6, 15, 52, 666}
remove()方法
格式:
集合名.remove(元素) E = {15, 1, 52, 5, 1, 6} E.remove(1) print(E) {5, 6, 15, 52}
discard()方法
集合名.discard(元素)
当删除的元素不存在,不会报错
E = {15, 1, 52, 5, 1, 6} E.discard(13) print(E) {1, 5, 6, 15, 52}
2.3 集合间的运算
集合在编程中的运算符:
符号 | 含义 |
---|---|
& | 交集 ,获得两个集合的公共元素 |
| | 并集 ,获得两个集合的全部元素 |
- | 差集,获得前面集合在后一个集合中没有的元素 |
^ | 对称差集,获得两个集合除公共元素外的所有元素(并集-交集) |
代码:
a = {2,5,18,6,1,4,8} b = {4,5,35,6,1,8} print(a & b) # & shift + 7 计算交集 print(a | b) # & shift + \ 计算并集 print(a - b) # 计算差集 print(a ^ b) # & shift + 6 计算对称差集 {1, 4, 5, 6, 8} {1, 2, 35, 4, 5, 6, 8, 18} {2, 18} {2, 35, 18}
本质:存储非重复的数据. 去重