python元祖与字典
元祖
tuple()
定义元组- 元组中存放的数据可以使int,str list diec
- 读取元组的值使用下标
- 元组的修改和删除是不支持的
- 但是列表支持修改a[0]=99元组不允许删除部分:remove pop del元组不能使用
- 元组可以使用的函数:index count
- index函数:参数是要查找的元素,返回的位置(第一次找到的元素的位置),你没有找到则报错
- count函数:要查找的元素的个数
- tuple()函数:可以将列表,字符串转成元组,但是int整形不能转
字典
list
tuple
dict
- 1、以键值对作为整体,保存的数据
- 2、字典中的key不能重复,如果有相同的则后面的值覆盖了前面相同key的值
- 3、字典中元素的顺序是无序
- B.字典中值的获取
- 根据键获取值
graph LR
字典名key-->value
- 可以通过get():字典名.get(key,default)—》如果找不到key则显示默认值
- C、字典的增删改查:
- 1、添加:根据key实现添加,student【‘sxe’】=‘男’注意:如果里面有sex,key 值则覆盖,没有的话则添加进来键值对
删除元素
-pop del remove
- 根据key删除
key value | |
---|---|
key value | |
key value |
删除方式
del
del字典名[key]如果key在字典中不存在显示keyErrorpop
字典名.pop(key)返回当前key对应的值 如果key在字典中不存在显示:keyErrorpopitem
随机删除 如果字典中所有内容都要删除则可以使用popiteam()报错-
删除多个元素(键值对)
-
方式:
- a.del字典名 :整个字典包含字典的空间都被回收如果使用则报错
- clear()通过字典调用函数
-
修改元素
- 修改:字典【key】=新值 则覆盖原有的value
- 查找:
-
字典.get(key)
-
字典[key]
字典的键值操作
- 1.熟悉一些函数
- 2.字典.keys()获取字典的所有的键
- 3.字典.values()获取字典的值
- 4.字典.iteams()输出一个元组
遍历
- 遍历键keys()for key in 字典.keys():
- 遍历键values()for value in 字典.values():
-
遍历字典:
-
1元组下标方式
-
a_tuple in a.items():
print(‘key={},value={}’.format(a_tuple[0],a_tuple[1]))
-
2、拆元组方式
-
for key,value in a.items():
….: print(‘key={},value={}’.format(key,value))
-
使用枚举遍历enumerate()
-
有下标
- 使用
- enumerate(dict.keys()/values())—>
- for index,key/value in enumerate(index.keys()/values()/或者字典本身)
- enumerate的特点:
- 还可以接收第二个参数,用于指定索引起始值
- 可以遍历值
set
- set特点:
- 可以将一个元组转换为set集合并且是每个字符都分开以逗号相隔
- 2、去重复并且打乱里面的排序
- 3、x&y(交集)比较集合里的元素有相同的就取出相同的没有相同的返回set()
- 4、x|y(并集)合并两个集合y在x的后面
- 5、x-y(差集) 取第一个集合的值如果这两个集合有重复的就去点重复的还是取x的集合的值
- 6、x^y(对称差)去掉重复的合并两个集合
- 7、交集有长度
-
使用set()进行列表取重复
- 运算符‘+’可以使两个或者以上的字符串列表元组合并但不包括字典集合set
- 元素安抚‘*’可以使两个或者以上的字符串列表元组复制但不包括字典集合set
- in/notin 的使用不包括集合set
-
python 内置函数
- cmp(a,b) 比较两个值
- len(item) 计算容器中的元素个数或者长度
- max(item) 返回容器中元素最大值
- min(item) 返回容器中元素最小值
- del(item) 删除变量//删除的引用//能删除指定的键值对
引用
- 涉及到‘=’都是引用
可变类型和不可变类型
- 不可变类型:字符串,数字,元组
- 可变类型:列表,字典(集合呢?)