Python学习笔记——数据容器

1.定义:一种可以容纳多份数据的数据类型,说容纳的每份数据称为一个元素,每份元素可以是任意类型(也可以是一个数据容器)的数据

2.list列表

定义:列表名称=[元素1,元素2,……]

定义空列表:列表名称=[] 或者 列表名称=list()

下标索引:取用 列表名称[下标]        如:List_name[0][1]

正向

01……N-1
反向-N……-2-1

列表的常用方法

列表名称.index(元素)查找元素对应下标(正向)
列表名称.inset(下标,元素)在下标对应位置插入给定元素
列表名称.append(元素)将给定元素追加到列表最后
列表名称.extend(其他数据容器)将给定数据容器追加到列表最后
列表名称.pop(下标)将列表指定位置的元素取出,可以用变量存储
列表名称.remove(元素)将列表从前至后搜索并删除与给定元素像匹配的第一个元素
列表名称.clear()清空列表
列表名称.count(元素)统计列表中该元素的数量

del关键字:del 列表名称[下标]        在列表中删除指定下标的元素

3.元组tuple(只读型list)

定义:元组名称=(元素1,元素2,.....)

定义空元组:元组名称=() 或者 元组名称=tuple()

元组的常用方法:.index()        .count()

4.字符串string

字符串的常用方法:.index()        .count()

字符串名称.replace(string1,string2)将string1的内容替换为string2
字符串名称.split(分割字符串)按分割字符串将字符串分割依次存入一个列表
字符串名称.strip()去除字符串首尾的空格、换行符
字符串名称.strip(string1)在字符串中搜索string1含有的字符并删除

5.序列(内容连续,有序,可以用下标索引)

list、tuple和string都是序列

序列的切片(从序列中取出子序列):序列名称[起始下标:结束下标:步长]

        注意:将序列倒序        序列名称[::-1]

6.集合set(无序且元素不重复)

定义:集合名称={元素1,元素2,......}

定义空集合:集合名称=set()

集合的常用方法:

        注意:集合无序,不支持下标索引访问

集合名称.add(元素)添加元素
集合名称.remove(元素)移除元素
集合名称.pop()从集合中随机取出一个元素,可以用变量存储
集合名称.clear()清空集合
set3=set1.diffence(set2)

set1有而set2没有的元素,不改变set1和set2

set1.diffence_updata(set2)从set1中删除与set2中相同的元素

7.字典dictionary(key:value)

定义:字典名称={key1:value1,key2:value2,......}(键值对)

定义空字典:字典名称={} 或者 字典名称=dict()

作用:key找到value(key不能重复,不可以使用下标索引)

        变量=字典名称[key]

字典的嵌套:再点中key(key不能为字典)和value可以为任意数据类型

        例如:

姓名语文数学英语
张三1009870
李四8060100
my_dict={
    "张三":{
        "语文":100,
        "数学":98,
        "英语":70
    },"李四":{
        "语文":80,
        "数学":60,
        "英语":100}
}


score=my_dict["张三"]["语文"]

字典的常用操作

字典名称[key]=value

key存在则原来的value被修改

key不存在则增加新的键值对

字典名称.pop(key)取出指定key的value,同时字典中的key:value被删除
字典名称.clear()清空字典
字典名称.keys()获取字典的所有key

8.数据容器的对比总结

是否支持下标索引

        注意:所有的数据容器都可以使用for循环进行遍历,但是不支持下标索引的数据容器无法使用while循环遍历

支持(序列类型)列表、元组、字符串
不支持(非序列类型)集合、字典

是否支持元素重复

支持(序列类型)列表、元组、字符串
不支持(非序列类型)集合、字典

是否可以修改

支持列表、集合、字典
不支持字符串、元组

数据容器的特点对比

列表元组字符串集合字典
元素数量支持多个支持多个支持多个支持多个支持多个
元素类型任意任意字符任意key:value
下标索引支持支持支持不支持不支持
重复元素支持支持支持不支持不支持
可修改性支持不支持不支持支持支持
数据有序
使用场景

可修改

可重复

不可修改

可重复

一串字符不可重复以key检索value

通用操作:

        len():统计元素个数

        min()/max():数据容器中元素的最小/最大值        注意:字典只比较key的大小不考虑value

        类型转换:list()/tuple()/str()/set()        注意:字典转列表、元组和集合value会丢失

        容器正向排序(升序):sorted(数据容器名称)        注意:排序的结果会变为列表

        容器反向排序(降序):sorted(数据容器名称,reverse=True)    注意:排序的结果会变为列表

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值