m1n9yu3-博客园

python学习_004

列表索引,查找,修改,扩展

list

  • [] list() 创建空列表
  • 列表中的元素,可以时任意类型, 可迭代对象也可以
  • 可以使用 range() 生成 元素
#创建列表的方式
a=list()
b=[]
print(type(a),type(b))
#使用 range 生成元素
c=list(range(10))
print(c)

索引

  • 列表分为正索引和负索引
  • 负索引 = 正索引 - 长度
  • 索引不能溢出,溢出就会报 IndexError 错误
c=[1,2,3,4,5]
print(c[-4],c[1])   # 负索引(-4) = 正索引(1) - 长度(5)
c[5]   #访问错误,索引溢出


2 2
---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
<ipython-input-17-4f3d8a83a406> in <module>
      1 c=[1,2,3,4,5]
      2 print(c[-4],c[1])   # 负索引(-4) = 正索引(1) - 长度(5)
----> 3 c[5]

IndexError: list index out of range

查询

  • index(值) 返回正索引 列表.index(值)

遍历列表,返回,匹配的值的下标

c=[1,2,3,2,2,2,2,2]
c.index(2)  #返回索引值  第一个匹配的值
#type(c.index(2))  #返回 int 类型
  • count(值) 列表.count(值)

返回该列表中,这个值出现的个数, 时间复杂度为 O(n) 需要遍历列表中所有元素,效率不高
通过列表下标找元素 时间复杂度为 O(1) 一步到位

c=[1,2,3,2,2,2,2,2]
print(c.count(2))   #遍历所有,进行计数  返回int类型
  • len(object) 返回长度

常用于列表字符串, 时间复杂度为 O(1) 因为是直接读取列表的属性

修改

  • append(object) 返回值为 None 列表.append(object)

向某个列表尾部添加元素 ,只能添加一个

  • insert(index,value) 列表.insert(index,object)

向指定位置加入元素, 后面元素需向后挪,拥有性能问题 超出右边界时,默认添加到尾部 超出左边界时,添加到头部

扩展

  • extend(object) 列表.extend(object) 返回值为None

可向列表尾部追加多个元素, 可以是可迭代对象

  • list + [0,1,2,3]

返回一个新的列表,源列表不会发生任何改变,可以无限添加
列表不能和 int 进行相加 不同类型之间不建议使用加法

明天补图,今天太晚了,时间没有安排好

posted @ 2020-06-04 21:34  m1n9yu3  阅读(140)  评论(0编辑  收藏  举报