Python的容器

一、python中的容器的介绍:

        Python中,可包含其他对象的对象,称之为“容器”。容器是一种数据结构。
        常用的容器主要划分为两种:序列(如:列表、元祖等)和映射(如:字典)。序列中,每个元素都有下标,它们是有序的。映射中,每个元素都有名称(又称“ 键 ”),它们是无序的。
除了序列和映射之外,还有一种需要注意的容器——“ 集合 ”。

二、python中的内置容器:

1、|-- list                          列表 :

        列表是python官方提供的内置的线性表。

        底层实现:基于双向链表结构实现。

        其中列表是无序的可重复的

(1)、list的定义

  可以直接用 变量名称 = []  直接定义,如:

变量名称 = []

age = []   age = [15,16,18,17,16,18]

也可以直接用变量名称 = list() 定义,如:

变量名称 = list()

names = list()	   names = list("张三", "李四", "王五")

(2)、列表操作的常用方法:

  • |----列表存入的被称为元素(element),可以通过下标可以访问元素格式为:列表名称[index]
  •         index:从0开始,最大值: 列表的总长度 - 1。
  • |----获取列表的长度:
  •         len(Iterable)        返回这个可迭代对象(Iterable) 的长度。
  • |-- append(ele)               # 在尾部追加新的元素
  • |-- insert(index, ele)        # 在特定的位置添加元素
  • |-- extend(list)                 # 合并列表  也可通过运算符号直接相加,列表 + 列表#等价于extend
  • |-- clear()                        # 清空列表
  • |-- remove(ele)               #移除列表中某个值的第一个匹配项
  • |-- pop()                          # 删除最后一个元素 
  • |-- index(ele)                   # 返回查找到的一个元素位置
  • |-- count(ele)                   # 返回元素的数量
  • |-- reverse()                    # 翻转列表顺序
  • |-- sort()                          # 排序
  • |-- copy()                        # 拷贝、复制,对象拷贝,对象浅拷贝

|-----列表的遍历:

    for循环

            for 临时变量 in Iterable:

                        # 每一次得到的元素会放在临时变量中。    

    也可以通过while循环来实现列表的遍历。

2、|-- set                          集合

特点:    1、元素不能重复
               2、无序的

(1)、set的定义:

可以用 变量名称 = set(Iterable)
 

s = set(Iterable)
ss = {1,2,3,4,}		# {}中必须有值,如果没有值,则默认是dict,不是set

注意:set的元素无法通过下标访问

(2)、集合操作的常用方法:

  •     |-- add(ele)                            # 添加元素
  •     |-- clear()                               # 清空列表
  •     |-- copy()                               # 浅拷贝
  •     |-- difference(set)                  # 差集
  •     |-- intersection(set)               # 交集
  •     |-- union(set)                        # 并集
  •     |-- update(set)                      # 合并两个集合
  •     |-- discard(ele)                     # 移除元素,如果该元素不存在,则什么都不做
  •     |-- remove(ele)                    # 移除元素,如果该元素不存在,则抛出异常
  •     |-- pop()                              # 删除最后一个元素 


注意:set没有办法使用while 遍历数据,只能使用for循环


3、|-- tuple                       元组

是一种不可变数据类型,基本数据类型也是不可变数据类型,所以表示的就是的固定的值,固定的一组值。但如果不可变数据类型中如果存在了可变数据类型,这个子对象是可以发生变化的。

可以通过下标来访问

元组的元素一旦定义,就无法修改!!!

(1)、tuple的定义:

元组名 = ( 元素1 , 元素2 , ... ... )

#当定义一个tuple时,在定义的时候,tuple的元素就必须被确定下来
>>> tup1 = ('Google', 'Runoob', 1997, 2000)  

元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用。

(2)、元组操作的常用方法:

  • |-- count(ele)               # 返回元素的数量
  • |-- index(ele)              # 访问元素

4、|-- dict                         字典

字典和集合一样,底层实现就是一个hash table

最终的表示方式:

        键值对:一个唯一键对应一个值,一一对应的关系,键必须不可变,所以可以用数字,字符串或元组充当

(1)、定义字典:

dd = dict({"id": 2, "name": "xx", "age": 17})

可以直接用变量名称 = {}

也可以用变量名称 = (dict{元素,元素,... ...})

d = {}    d = {"id": 2, "name": "xx", "age": 17}

(2)、字典操作的常用方法:

  •     |-- clear()                    # 删除字典内所有元素
  •     |-- copy()                    #返回一个字典的浅复制
  •     |-- d[key]                    # 就可以获取字典中,key对应的值,如果不存在,则抛出异常
  •     |-- get(key, [defaul])   # 就可以获取字典中,key对应的值,如果不存在,则返回None
  •     |-- setdefault()       # 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
  •     |-- keys()                  # 获取所有的键
  •     |-- values()               #  以列表返回字典中的所有值
  •     |-- items()                # 以列表返回可遍历的(键, 值) 元组数组
  •     |-- pop(key)             # 通过key,删除键值对
  •     |-- popitem()            #  返回并删除字典中的最后一对键和值。
  •     |-- update()             # 合并字典  等价于 {**对象, **对象}
  •     |-- fromkeys(iterable)    # 生成一个新的字典对象


如何遍历字典:
    for i in 对象.keys():        #字典的键
        print(i, 对象[i])
    

    for i in 对象:                #字典的键和值
        print(i, 对象[i])

    
    for item in 对象.items():              #字典的键和值
        print(item[0], item[1])


    for (key, value) in 对象.items():             #字典的键和值
        print(key, value)
    
    for key, value in 对象.items():                #字典的键和值
        print(key, value)

你可能感兴趣的:(大数据,python)