Python内置容器篇

1、列表(list)

2、集合(set)

3、元组(tuple)

4、字典(dict)

一、列表list:

list:
    列表,python官方提供的内置的线性表
    底层实现:基于双向链表结构实现

   是一种有序的集合,可以随时增加或者删除其中的元素,标识是中括号[]

定义列表:
    age = []    # 中括号在python代表的就是列表
    age = [18, 16, 20, 30]
    
    names = list()    
    names = list("张三", "李四", "王五")


操作列表中的元素:
元素:element:
    通过下标可以访问元素
    列表[index]
    下标index
    index:从0开始,最大值: 列表的总长度 - 1

获取列表的长度:
    len(Iterable)        # 返回这个可迭代对象的长度


列表的遍历:
    for循环
    for 临时变量 in Iterable:
        # 每一次得到的元素会放在临时变量中
    
    while循环:
        
列表的常见方法:
    ['append', 'clear', 'copy', 'count', 'extend', 'index',
    'insert', 'pop', 'remove', 'reverse', 'sort']
    这些方法都是用来操作列表的
        CRUD(增删改查)
    |-- append(ele)        # 在尾部追加新的元素
    |-- insert(index, ele)    # 在特定的位置添加元素
    |-- extend(list)    # 合并列表,也可以用str()+str()的方式来合并列表
    |-- clear()        # 清空列表
    |-- remove(ele)        # 删除指定元素 
    |-- pop()        # 删除最后一个元素 
    |-- index(ele)        # 返回查找到的一个元素位置
    |-- count(ele)        # 返回元素的数量
    |-- reverse()        # 翻转列表顺序
    |-- sort()        # 排序
    |-- copy()        # 拷贝、复制,对象拷贝,对象浅拷贝

二、集合set:

set(集合):和哈希表的存储的方式相似
    哈希表(hash table):
        哈希算法的实现:能够将任何事物映射为一个特定的值
        特点:    1、元素不能重复
                       2、无序的
定义set:
    s = set(Iterable)
    ss = {1,2,3,4,}        # {}中必须有值,如果没有值,则默认是dict,不是set

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

set的常见方法:
    ['add', 'clear', 'copy', 'difference', 'difference_update', 
    'discard', 'intersection', 'intersection_update', 'isdisjoint', 
    'issubset', 'issuperset', 'pop', 'remove', 'symmetric_difference', 
    'symmetric_difference_update', 'union', 'update']


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

注意:set没有办法使用while 遍历数据,只能使用for循环,因为while循环需要访问元素下标,而set中的元素无序而不能访问下标所以不能实行

三、元组tuple:

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

    可以通过下标来访问

元组的元素一旦定义,就无法修改!!!
    
常用方法:
    |-- count    # 统计元素个数
    |-- index    #访问元素下标

四、字典dict:

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


    最终的表示方式:

group={}

group={'name':"某某某","年龄":18,"sex":"女"}#键值对:一个唯一键对应一个值,一一对应的关系

groupsss=dict({'name':"某某某","年龄":18,"sex":"女"})

获取字典中的值:
    d[key]                # 就可以获取字典中,key对应的值,如果不存在,则抛出异常
    
    字典对象.get(key,default)    # 就可以获取字典中,key对应的值,如果不存在,则返回None


字典对象的常见方法:
     ['clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 
     'pop', 'popitem', 'setdefault', 'update', 'values']

    
    |-- clear()        # 
    |-- copy()        #
    |-- get(key, [defaul])    # 
    |-- setdefault()    # 
    |-- 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)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值