Python容器解析

    科技2022-07-11  93

    1、容器(container、collection)           存储大量数据的一种数据类型2、python中提供了哪些容器?     list         列表     set         集合(所储数据不能重合)     tuple     元组     dict       字典(介质的对比)

    列表:(线性表)      python提供的列表这种容器,是一种线性结构的存储空间(数组是连续的代数,python中没有数组,数组是一种连续的内存)

    数组:内存中一块连续的内存空间 (数组是连续的,可以重复)     优点:查询速度快,通过索引迅速检索对应的值     缺点;增删改的效率较低

    链表:不是连续存储     优点:曾删改的效率相对与数组较高     缺点:查询速度慢

    python中的列表容器就是基于双向链表结构设计的(Java中LinkedList)

    列表的定义:列表是Python中最基本的数据结构 列表中的每个元素都分配一个位置,一个元素对应一个位置 访问List的元素(element)      通过下表访问,注意:从0开始      ls3[2] = 100    #修改元素的值弱数据类型语言的特点: 1、 ls = [] 2、 ls2 = list() 3、 list3 = list([1,2,3,4,5,6,7]) # list3 =[1,2,34,4,5,6]

    如何遍历list: for   i   in    list 

    list的常见方法:[‘append','clear','copy','count','extend','index','insert','pop','remove','reverse','sort']

    1、ls.append(元素)     #在尾部追加一个元素 2、ls.insert(索引位置,元素) #在特定位置,添加元素 3、ls.clear()      #清除列表 4、ls.count()    #统计元素出现的次数 5、ls.index()     #查询元素首次出现的引索,如果不存在,则抛出异常 6、ls.reverse()   #翻转列表顺序 7、ls.copy()    #栈拷贝对象(堆复制对象)   8、ls.remove()    #元素移除 9、ls.pop([index])    #默认删除最后一个元素,如果指定位置,则删除对应位置的元素 10、ls.extend(可迭代对象)    #合并列表 11、ls.sort()     #排序   (小到大) ls.sort(reverse=Ture)   #(大到小排序)

    常见的线性表:

    多维列表:[ [ ], [ ] , [ ], [ ] ]

    Set(集合):也是python提供的一种容器                      特点:无序、元素不能重复

    1、怎末定义set合集 s={}(不能为空集)  s={1,2,3.....} >>>s={1,2,3} >>>type(s) <class'set'> >>>s [1,2,3]

    set中不能存放重复的数据

    s=set() s=set({元素1,元素2,......}) s=set([元素1,元素2,......])  #将list转换为set对象 ls=list({元素1,元素2,......})  #将set转换为list对象

    2、通过官方提供的方法来操作: 1、1--ls.clear()      #清除列表 2、1--pop()     #随机移除 3、1--intersection #交集                 s.intersection(ss):s和ss的交集 4、1--union       #并集                 s.union(ss):s和ss的并集 5、1--add      #添加元素                      s.add(55):表示添加55这个元素  6、1--difference   #差集 7、1--remove()  #移除元素(移除的元素不存在                                ,抛出异常,进行提示)     8、1--discard()     #删除元素(移除的元素不存在                                ,没有任何解释,不运行)    9、1--update(s,sss)   #合并集合s和sss

    元组(tuple):     元组是一种不可变的数据类型。(不可变:元组中间元素不允许被修改和改变)。

    元组定义:

       t=()   #定义元组,但不推荐使用,因为元组不可 变

       t=(“春”,“夏”,“秋”,“冬”)  #建议定义时初始化值        t= tuple( ( ) )   #直接定义元组

    注意:三种容器都可以使用对应的函数完成转换  

    字典(dict);   dictionary,是一种使用key-value键值对的结构存储数据的(python中key不能重复,否则会覆盖数据)

    (key的类型只能是字符串,value类型任意)

    如何访问字典值:    使用字典中的key获取key对应的值   d["name"]       #获取name对应的值,如果该key不存在,则抛出异常   字典常用方法: 

    1、1--count      #统计元素个数 2、1--index      #查询元素所在索引

    3、|--fromkeys()  #将其他可迭代对象转换为字典

    d.fromkeys(["1","2","3"])转换为字典形式

    4、|--get()         #如果key中不存在所查对象,则返回None 5、|--items        #迭代出每一个键值对[ ( ),( ) ] 6、|--keys         #f返回所有键 7、|--value       #返回所有值 8、|--setdefault #新增key和value 9、|--update      #合并字典 10、|--popitem   #(Pair  are returned in LIFO(last-in,first-out)order随机移除 11、|--pop(key)    #通过key对应的键值对                                        

    Processed: 0.015, SQL: 8