线性结构_线性结构怎么判断

线性结构_线性结构怎么判断线性结构特征: 可迭代 for … in 有长度,通过len(x)获取,容器 通过整数下标可以访问元素。正索引、负索引 可以切片 已经学习过的线性结构:list、tuple、str、bytes、bytearray 切片 sequence[start:stop]sequence[start:sto

线性结构特征

  • 可迭代 for … in
  • 有长度,通过len(x)获取,容器
  • 通过整数下标可以访问元素。正索引、负索引
  • 可以切片

已经学习过的线性结构:list、tuple、str、bytes、bytearray

 

切片

sequence[start:stop]
sequence[start:stop:step]

通过给定的索引区间获得线性结构的一部分数据
start、stop、step为整数,可以是正整数、负整数、零
start为0时,可以省略
stop为末尾时,可以省略
step为1时,可以省略
切片时,索引超过上界(右边界),就取到末尾;超过下界(左边界),取到开头

在序列上使用切片[start:stop],子区间索引范围[start, stop),相当于从start开始指向stop的方向上获取数据
默认step为1,表示向右;步长为负数,表示向左
如果子区间方向和步长方向不一致,直接返回当前类型的”空对象”
如果子区间方向和步长方向一致,则从起点间隔步长取值

线性结构_线性结构怎么判断

 

 线性结构_线性结构怎么判断

 

 线性结构_线性结构怎么判断

 

内建函数      函数签名              说明
id            id(object)            CPython中返回对象的内存地址可以用来判断是不是同一个对象

# 使用id看地址,要注意地址回收复用问题
print(id([1,2,3]))
print(id([4,5,6,7]))
# 上下两句可能内存地址一样,但是上面那个[1,2,3]没有意义,因为它用完之后,引用计数为0了,没人能再次访问到,释放了内存
# 如果2个存在在内存中的对象,地址一样一定是同一个对象

 线性结构_线性结构怎么判断

 

 上例可知,实际上切片后得到一个全新的对象。 [:] [::] 相当于copy方法。

 

(0)
编程小号编程小号
上一篇 2023-09-02 11:46
下一篇 2023-09-02 12:11

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注