python基础 - day6 元组和字典

python基础 - day6 元组和字典

今日分享的主要内容:元组相关概念,元组与列表的区别以及字典的相关知识点python基础 - day6 元组和字典

1、元组

元组是容器下的数据类型,以()作为容器的标志,元素间用逗号隔开:(元素1, 元素2, 元素3, …)

特点 :元组就是不可变的列表,只要是不改变列表的操作,元组都支持

元组是不可变的(元素的值和个数),是有序的(支持下标操作)

  • 空元组没有任何意义
  • 一个元素的元组需要在那个元素后面加逗号,否则(23)这种不是一种,而是整数,因为()在python中本身就有其他的意义(分组)
  • 在不产生歧义的情况下,可以省略(),多个元素的赋值其实可以看出是从元组中取值

获取元组元素的方法:

1)列表支持的元组也支持

2)使用个数和元组元素个数一样的变量来获取元素

​ 使用比元组元素少的变量来获取元素,当且仅当有一个元素前面加*时

列表支持的运算元组也支持,运算规则一致。

列表支持的函数中除了改变列表的函数,其他的元组都支持

列表支持的方法中除了会修改列表的方法,其他的元组都支持

2、字典

1)什么是字典

容器型的序列,是可变的,但是的无序的(不支持下标操作),可以用两个元素值和个数相等,但顺序不等的来进行比较等于,看是否相等来判断字典无序

特点 - a.可变的,无序的
​ b.键和值成对存在
​ 键 - 可变的数据类型(数字、字符串、元组),不可重复
​ 值 - 没有要求

可变:可以修改元素的值和个数
无序:不支持下标操作
不可重复:如果键重复了,后面的会覆盖的前面的,只会留一个

2)字典的增删改查
  • 查 :

    单个查询 - 字典.[key] - 若key不存在,报错

    ​ 字典.get(key, 值) - key不存在,不会报错,会返回一个默认值,默认None

    遍历 - list(字典)(得到由键组成的列表),然后用for循环通过key来遍历字典

  • 增/改:字典[key] - 当key存在就修改key对应的值,若不存在就新增key对应的键值对
    字典.setdefault(key, 值) - 当key存在不做任何修改,若不存在就新增key对应的键值对

  • 删 - del 字典[key]

    ​ 字典.pop(key)

3)字典的相关操作

不能进行运算和比较大小,可以比较相等

函数:len/dict

4)字典的方法

字典.clear() - 清除字典的内容

字典 = {} - 也可以实现清除,但是效率比clear低很多

字典.setdefault(key, 值) - 当key存在不做任何修改,若不存在就新增key对应的键值对

字典.fromkeys(序列, 值) - 创建一个新的字典,key是序列里的元素,默认值为None,可以自己设置,但是不管怎么设置,每个键对应的值都是一样的

字典.keys() - 获取字典的key(结果是序列但不是列表)

字典.values() - 获取字典键对应的值(结果是序列但不是列表)

字典.items() - 获取字典对应的键和值(结果是序列,里面的元素是元组)

字典1.update(字典2) - 用字典2的元素更新到字典1,字典2不一定是字典,也可以是可以转换成字典序列