# 序列类型分类
## 分类方式一
容器序列
list、tuple和collections.deque,这些序列能存放不同类型的数据。实际上容器序列存放的是任意类型对象的引用。
扁平序列
str、bytes、bytearray、memoryview和array.array,这些序列智能存放单一类型的数据。实际上扁平序列是一段连续的内存空间。
## 分类方式二
可变序列
list、bytearray、array.array、collections.deque和memoryview。
不可变序列
tuple、str和bytes。
## 类图
```mermaid
classDiagram
Container <|-- Sequence
Iterable <|-- Sequence
Sized <|-- Sequence
Sequence <|-- MutableSequence
class Container{
__contains__()
}
class Iterable{
__iter__()
}
class Sized{
__len__()
}
class Sequence{
__getitem__()
__contains__()
__iter__()
__reversed__()
index()
count()
}
class MutableSequence{
__setitem__()
__delitem__()
insert()
append()
reverse()
pop()
remove()
extend()
__iadd__()
}
```