python2

21 阅读3分钟

数据结构

分为字符串,字典,列表,元组,集合

这几种基本都有索引,id,type,value的

通用的内置方法:lena()获取总长,max/min()获取结构中的最大值/最小值(本意是在可比较的结构里求极值),sum()用于求总和

1.列表

列表是一种有序、可变、可重复的线性数据结构

特殊:列表是多个元素的复合体,所以除了列表有id,type,value标签,列表里的元素也都有id,type,value标签 且列表可以嵌套列表,索引有[0~6] 读取列表的元素是用 索引来打印出元素如 print(list(索引))

操作:{列表+列表}拼接成新列表,{列表*数字}用于重复列表里的元素

内置方法:list()是将别的数据结构转化成列表,像字典,元组都有同名英文单词的方法都是转化数据结构

方法 count(元素)用于获取列表的元素的索引 print(列表名.count(元素))

sort()将列表的元素按照大小进行排序(列表里的元素必须是同一种类型)

reverse()就是颠倒列表的顺序

insert(位置,值): 列表名.insert(索引,值)

append(元素)添加新的元素到列表末尾里

pop(索引)删除该索引对应的value,当索引不存在则删除最后一个元素

del.列表名[索引]删除该位置上的元素

2.元组

特性:有序的,不可变的,可重复的线性数据结构

与列表类似可以用元组+元组来组合成新的元组,有del()语句用于删除整个元组,可以用索引来打印元素

内置的方法: 有len()

max/min()

tuple()转换成元组

sum()

3.字典

字典是无序,可变,键味一,键值对形式的散列表数据结构,用途是通过键快速查找对应的值

特殊: “键”必须是一个不可变、可哈希(hashable)的对象,但值可以是任意的 同样的键只能出现是一次,如果出现两次:后面出现的键会覆盖之前键 一般以{键:值}创建,和dict创建,与集合的表现形式都是以{}出现,但两者不同,键来打印约束字典里的元素的

内置方法: len(),type()

str()以字符串来输出字典

cleara()彻底清空字典的元素;py()拷贝字典

get()原型:

`dict.get(key[, default]) -> value | default`
位置参数:1 个必给 key1 个可选 default

返回值: – key 存在 → 对应的 value – key 不存在 → default(省略时为 None)

items()是将字典里的元素包括键在在内的,创建一个以(key,value)为一组的列表/元组,但不是列表本身,keys()只拿键 values()只拿值

setdefault(键【,默认值】)如果键存在,则返回其对应值,否则返回默认值,如果键值没有对应的值则添加字典

4.集合

集合的创建是以set()创建空集合,非空集合是以直接的花括号来创建的(没冒号,有冒号的是字典),且元素必须是可哈希的,集合的元素是不重复的

可以创建可变和不可变的集合,正常建的是可变集合,创建不可变集合要用frozenset()方法

集合是用来储存数据的,类似与数学上集合,

操作:

增加

    srt.add(元素)

合并

    并集:集合3=集合1.union(集合2)
    交集:集合3=集合1.intersection(集合2)
    效果如下
    a = {1, 2, 3}
    b = {2, 3, 4}
    c1 = a.intersection(b)   # 方法写法
    c2 = a & b               # 运算符写法
    print(c1, c2)            # {2, 3} {2, 3}

删除

    集合.remove(元素)
    集合.discard(元素)
                      用与删除指定的元素
    集合2=集合1.pop()
    clear()清除所有