zoukankan      html  css  js  c++  java
  • 列表 字典 元组 集合

    列表:

     1、用途:记录多个值(同种属性)

    2、定义方式:在[]内用逗号分隔开多个任意类型的值

    类型转换 定义列表实际上是借用list()方法生成列表,可以将其他类型转化为列表,如字符串元组,字典集合

     3、常用操作+内置的方法

    1、按索引存取值(正向存取+反向存取):即可存也可以取

      使用下标索引来访问列表中的值

    2、切片()
    列表中的截取与字符串类似,按照索引

    3、长度

    使用len()方法获取列表长度,参数为列表

    4、成员运算in和not in
    通过返回值判断元素是否在列表中,

    5、追加&插入
    使用append()方法来添加列表项,添加在列表末尾
    insert(index,obj)使用insert方法可以将对象插入列表,index为插入位置的索引

    list.remove(obj)移除某个值在列表中的第一个匹配项

    6、删除

    可以使用 del 语句来删除列表的的元素

    list.pop(index)删除并返回列表中的一个元素,index值默认为-1

    7、循环
    可以使用for输出列表元素
    for element in list:

    print(element)

    list.count(obj)方法,统计某个元组在列表中出现的次数

    list.extend(seq)在列表末尾一次性添加另一个序列的多个值

    list.index(obj)返回对象第一次出现在索引中的位置

    list.reverse()将列表反转无返回值

    list.copy()返回复制的列表

    list.clear()清空列表

    list.sort(reverse=False)将列表排序reverse值默认为False,从小到大排序,

    存多个值

    有序

    可变(可变==不可hash 不可变==可hash)

    队列:先进先出
    堆栈:后进先出
    可以通过列表中的append()方法与pop()方法实现队列以及堆栈模型

    元组tuple:
    用途:元组就是一个不可变的列表

     2、定义方式:在()内用逗号分隔开多个任意类型的元素

    当元组个数只有一个时,必须加逗号与()运算符进行区分

    类型转换
    通过调用tuple()方法创建元组对象,参数可以为字符串类型,列表,字典集合

     3、常用操作+内置的方法

    1、按索引取值(正向取+反向取):
    列表属于不可变类型,因此只能取

    2、切片()
    等同于字符串遵循左闭右开原则

    3、长度
    len()
    4、成员运算in和not in
    等同于列表

    5、循环
    同上

    tuple.index(element)返回元素第一次出现的索引,当元素不存在时将报错

    tuple.count(element)返回元素在元组中的个数,当元素不存在时返回值为0

    存多个值

    有序

    不可变(1、可变:值变,id不变。可变==不可hash 2、不可变:值变,id就变。不可变==可hash)
    元组中存储的是索引以及对象的id()信息,因此元组不可变指的是元组中存储的数据不可变,并不是元组引用的对象不可变

    元组禁止修改但可以通过+,*对元组进行组合,将生成一个全新的元组

    当使用列表元组对字典类型进行转化时,将只能讲字典的key存进列表及元组

    字典类型dict

    1、用途:记录多个值,列表是索引对应值,而字典是key对应值,其中key对value有描述性的功能

    2、定义方式:在{}用逗号分隔开多个元素,每个元素都是key:value的形式,其中key可以不可变类型,通常是字符串类型
     而value可以是任意类型

     类型转换

    当使用dict()方法时,参数可以为,元组,列表(当他们的元素处于一一对应的关系时),也可以将赋值表达式表示成字典形式

    也可以使用fromkeys(seq,val)方法创建字典类型

    以序列seq做字典中的键,val为对应的值

    3、常用操作+内置的方法
    1、按key存取值:可存可取
    把相应的键放入到方括号中

    可以使用get(key)方法取值当key不属于字典时,返回default

    2、长度len
    len(dict)将得到字典键值对个数

    3、成员运算in和not in :是以字典的key为准的
    即判断元素是否属于字典的键

    4、删除
    dict.clear()方法将字典所有元素删除

    dict.pop(key)删除指定键所对应的值返回被删除的对象

    dict.popitem()随机返回被删除的键值对

    5、键keys(),值values(),键值对items()

    dict.keys(),dict.values()分别返回字典所有键,所有值的可迭代类型集合

    使用for 可以迭代keys(),values(),items()方法所产生的特定集合

    当使用for 循环时,参数分别为1,1,2,且对应为键,值,键与值

    dict.copy()方法返回一个字典的浅复制
    dic.update(dict)将字典2的键值对更新到字典1中

    dict.setdefault(key,value)和get()类似, 但如果键不存在于字典中,将会添加键并将值设为value如果存在将返回对应的值

    存多个值 无序 可变

    集合

    集合类型set
    1、用途:I: 关系运算 II:去重

    2、定义方式:在{}内用逗号分隔开多个元素,当设置空集合时,必须使用set()方法

    但是元素的特点是
     I: 集合内的元素必须是不可变类型
     II: 集合内元素无序
     III: 集合内元素不能重复

    数据类型转换
    可以将其他类型转化为集合,且不可存在可变类型

    3、常用操作+内置的方法

    1、长度len

    集合长度
    2、成员运算in和not in

    判断元素是否在集合
    3、|合集:

    4、&交集:

    5、-差集: 

    6、^对称差集:求没有同时报名两门课程的学生

    7、==
    是否相等

    父子集描述的是一种包含与被包含的关系
    8、父集:>=
    9、子集:<=

    set.add(obj)将对象插入集合如果已存在,将不做任何操作

    set.update(参数)参数可以是列表元组字典,update()方法只是将对象的元素加入集合,

    remove(x)方法将元素 x 从集合 s 中移除,如果元素不存在,将发生错误无返回值

    此外还有一个方法discard()也是移除集合中的元素,且如果元素不存在,不会发生错误

    s.pop()随机删除一个元素并返回
    clear()清空集合

    in判断元素是否存在集合中

    copy()拷贝一个集合

    存多个值

    无序

    可变

    集合的去重
    局限性
    1. 只能针对不可变类型
    2. 不能保证原来的顺序

     

  • 相关阅读:
    技术笔记3
    技术笔记2 jetty jboss
    技术笔记1前台
    日常笔记4
    日常笔记3
    日常笔记2
    日常笔记
    C语言——结构体
    用Java原子变量的CAS方法实现一个自旋锁
    Java中处理Linux信号量
  • 原文地址:https://www.cnblogs.com/suncunxu/p/10001011.html
Copyright © 2011-2022 走看看