1. 序列
概念:
内容连续,有序,可使用下标索引的一类数据容器
列表,元组,字符串可以看作序列
切片:
从一个序列中取出一个子序列
语法:序列[起始下标:结束下标:步长]
注:是从开始下标取出对应的元素直到结束下标,不包含结束下标,
可以留空[:] ,意义为从头到尾
步长就是两个下标相隔的长度,如为1就连续取出,
如果步长为负就倒着取(起始下标和结束下标也要反向标记)
此操作不会影响序列本身,而是产生一个新的序列
2.集合
概念:
不支持重复元素且无序的数据容器
注:不支持下标访问的。因为集合的元素顺序与输入的顺序的无关的所以是无序的。
形式:
#字面量集合
{元素1,元素2....}
#定义集合变量
变量={元素1,元素2....}
#定义空集合
变量=set()
包含的方法:
1. add(元素) 添加
形式: 集合.add(元素)
2. remove(元素) 移除
形式: 集合.remove(元素)
3. pop () 取出
形式 变量=集合.pop()
注:因为集合无法通过下标访问集合,所以是随机取出的一个元素
(实际取出的数据是集合列表的第一个元素,这里的第一个元素不是第一个输入的元素)
4. clear() 清空
形式: 集合.clear()
5. difference(集合2) 取出集合1和集合2的差集
形式: 新集合=集合1.difference(集合2)
注:取出的元素径是集合1中集合2没有的元素,且不会对集合1本身发生改变。
6. difference_update(集合2) 消除差集
形式: 集合1.difference_update(集合2)
注:在集合1中去除与集合2相同的元素。
7. union(集合2) 将俩个集合合并
形式: 新集合=集合1.union(集合2)
注:产生新的集合且去重,集合1和集合2保持不变
8. len() 统计集合的个数
形式: 变量=len(集合)
注:有整形返回值需要变量接收
遍历:
***不支持while循环(因为不支持下标索引)***
可以使用for循环
形式: for x in 集合:
print(x)
3. dict 字典
概念:
通过key 去找到对应的value
注: key不可以重复,虽然key重复时不会报错,但是在保存key时只有保留后添加的key。
不可以使用下标找到对应的元素,而是使用key去找到对应的value
key不可以为字典,但是value不限制
形式: 字典[key]返回对应的value
my_dict = {"王力宏": {"部门": "科技部", "工资": 3000, "级别": 1},
"周杰伦": {"部门": "市场部", "工资": 5000, "级别": 2},
"李俊杰": {"部门": "市场部", "工资": 7000, "级别": 3},
"张学友": {"部门": "科技部", "工资": 4000, "级别": 1},
"刘德华": {"部门": "市场部", "工资": 6000, "级别": 2}}
注:可嵌套
形式:
#定义字面量
{key:value,key:value......}
#定义字典变量
变量={key:value,key:value......}
#定义空字典
变量={}
变量=dict()
常见操作:
新增元素/更新元素
形式: 字典[key]=value
注:key对应的元素被覆盖成新的value
如果没有对应的key就新增key和对应的value
删除元素 pop() 删除key与对应的value
形式: 字典.pop(key)
注: 该方法存在返回值,返回值的类型与value的类型有关
清空元素 clear()
形式: 字典.clear()
获得全部的key keys()
形式: keys=字典.keys()
注:keys的类型为dict_keys 该操作的主要目的是为了遍历字典
遍历
方式1:
for循环遍历:
for key in keys:
print(key)
print(字典[key])
注:不支持while循环
方式2:
for key in 字典:
print(key)
print(字典[key])
统计元素 len()
形式: len(字典)