总结元组类型和字典类型

  • 元组
    • 它是序列结构,但是是一种不可变的序列,类似于内容不可变的列表。其内部元素不可修改,元组和列表的用法差不多
    • 元组的创建: ```python 创建一个元组,只要用逗号分隔 不同的数据元素使用小括号括起来 类如 : tup = (1,2,’st’) tup1 = (1,)

除此之外,我们还可以直接通过 tuple() 来进行创建元组 tuple(iterable)
iterable: 可迭代对象:如字符串,列表,元组,字典等, 通过for in
语句将其中的内容拿出的过程为迭代

  1. - 元组的操作
  2. - 元组的创建
  3. ```python
  4. 创建一个元组,只要把 逗号 分隔 不同的数据元素 使用 小括号 括起来
  5. 类如 : tup = (1,2,'st') tup1 = (1,)
  6. 除此之外,我们还可以直接通过 tuple() 来进行创建元组
  7. tuple(iterable)
  8. iterable: 可迭代对象:如字符串,列表,元组,字典等,通过for in
  9. 语句将其中的内容拿出的过程为迭代
  • 元组的删除
    1. 元组是不可变的,其中的元素都不可以进行修改(一级元组)和删除
    2. 如果要对元组增加一个元素只能创建一个新的元组,用加法操作
    3. 如 tup = (1,2,3,【4,5】)那么,可以对 tup【3】【】内的元素进行修改
    4. 元组没有任何会对内部元素发生 修改 动作的方法。
    5. 元组没有 remove,append,pop 等方法
    6. 注意: 元组所消耗的内存比列表少!
  • 字典

    Python 的字典数据类型是基于hash散列算法实现的,采用键值对 (key:value) 的形式,
    根据 key 的值计算 value 的地址,具有非常快的查取和插入速度。
    它是一种可变对象,所以支持修改,插入,删除等操作。

    • 字典的创建 ```python 常用的创建 {} {key:value,key2:value2}
      或者用 dict(**kwargs)例子: dic1 = dict(name=’三’,age=18) dict(mapping) 例子: dic2 = dict([(name,’三’),(age,18)]) dict(iterable) 例子: dic3 = zip(‘abcde’,’36845’) dict(dic3) {‘a’: ‘3’, ‘b’: ‘6’, ‘c’: ‘8’, ‘d’: ‘4’, ‘e’: ‘5’}

注意: 在python3.6开始,字典对象会保持键值插入时的 顺序,并且其包含的 元 素个数不限, 值的类型 也可以是其它 任何数据类型。 字典的 key 必须是 不可变的对象: 例如整数、字符串、bytes 和元组,但使 用最多的还是字符串。 列表、字典、集合等就不可以作为 key。 同时,同一 个字典内的 key 必须是唯一 的,但值则不必。

扩展map()与zip()
map(func,*iterable) 将iterable(可迭代对象)内的对象逐个传入func(函数或方法)里处理 1.map()方法,它返回的是一个迭代器 例子: a = [‘name’, ‘张三’, ‘age’, 18] print(tuple(map(str,a)))
(‘name’, ‘张三’, ‘age’, ‘18’)

  1. <a name="Zi5gI"></a>
  2. ### 作业2
  3. li1 = ['name', 'age', 'address'] <br /> li2 = ['moumou', 18, 'hunan'] <br /> 将 li1 与 li2 以键值对方式呈现 <br /> 建议:如果有对函数了解的,建议用 map方法试一下
  4. ```python
  5. li1 = ['name', 'age', 'address']
  6. li2 = ['moumou', 18, 'hunan']
  7. print(dict(zip(li1,li2)))

作业3

li = {‘name’: ‘qianan’, ‘age’: 18, ‘address’: ‘hunan’}
打印 li 列表的key与value值

  1. li = {'name': 'qianan', 'age': 18, 'address':'hunan'}
  2. for i in li.items():
  3. print(i)
  4. print(li.keys())
  5. print(li.values())