嵩天Python学习笔记-04

组合数据类型

集合

  1. 无序性、唯一性、不可更改
  2. 用 {} 表示,元素间用逗号分隔
  3. 建立集合类型用 {} 或 set()
  4. 建立空集合必须使用 set()
>>>A = {"python", 123, {"python", 123}}
>>>B = set("python")

处理方法

S.add(x)  # 如果x不在S中,则将x添加到S
S.discard(x)  # 移除x,如果不在,不报错
S.remove(x)  # 移除x,不在报错
S.clear()
S.pop()  # 随机pop一个元素,如果S为空则报错
S.copy()  # 返回 S 的一个副本
len(S)  # 返回 S 中元素的个数
x in S
x not in S
set(x)  # 将其他类型变量x转变为集合类型

应用场景

  1. 包含关系比较
  2. 数据去重

序列

  1. 一维元素向量,元素类型可以不同
  2. 元素间由序号引导,通过下标访问
  3. 基类类型
x in s
x not in s
s + t  # 连接两个序列
s*n 或者 n*s  # 将序列s复制n次
s[i]  # 索引
s[i:j] 或者 s[i:j:k]  # 切片

函数及方法

len(s)
min(s) 和 max(s)  # s中元素要可比较
s.index(x) 
s.index(x, i, j)
s.count(x)

元组

  1. 是序列类型的扩展,创建后不可更改

  2. 使用 () 或者 tuple() 创建,元素间用逗号分隔

  3. 可以使用或者不使用小括号,创建时可以不使用括号

    def func():
        return 1, 2;
    
    >>> creature = "cat", "dog", "tiger", "human"
    >>> creature
    ('cat', 'dog', 'tiger', 'human')
    
    
  4. 继承了序列类型的所有操作

列表

  1. 序列类型的拓展,可以更改
  2. 使用 [] 或者 list() 创建,元素间逗号分隔
  3. 列表中各元素类型可以不同,无长度限制
  4. [] 真正创建一个列表,赋值仅仅传递了一个引用

列表函数或方法

ls[i] = x  # 替换
ls[i, j, k] = lt  # 用列表lt替换ls切片后对应得元素子列表
del ls[i]
ls += lt  # 列表相加
ls *= n  # 更新列表ls,其元素重复n次

# 方法
ls.append(x)
ls.clear()
ls.copy()
ls.insert(i, x)
ls.pop(i)
ls.remove(x)  # 将第一个x删除
ls.reverse()

应用场景

  1. 元组用于元素不改变的应用场景
  2. 列表灵活、常用

字典

  1. key-value 的数据类型
  2. 键值对的集合、无序
  3. 键值对用冒号:表示
  4. 采用 {} 和 dict() 创建
  5. d[key] 方式既可以索引,也可以赋值

函数及方法

del d[k]
k in d
d.keys()
d.values()
d.items()
d.get(k, <default>)  # k如果存在,则返回k的value值,否则返回default值
d.pop(k, <default>)  # 同上
d.popitem()  # 随机取一个键值对,以元组形式返回
d.clear()
len(d)

应用场景

  1. 统计数据
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容