👉引言💎
铭记于心 | ||
🎉✨🎉我唯一知道的,便是我一无所知🎉✨🎉 |
Python基础语法(四)之列表
目录
3.0 概述
1 | list.append(obj)在列表末尾添加新的对象 |
2 | list.count(obj)统计某个元素在列表中出现的次数 |
3 | list.extend(seq)在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表) |
4 | list.index(obj)从列表中找出某个值第一个匹配项的索引位置 |
5 | list.insert(index, obj)将对象插入列表 |
6 | list.pop([index=-1])移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 |
7 | list.remove(obj)移除列表中某个值的第一个匹配项 |
8 | list.reverse()反向列表中元素 |
9 | list.sort( key=None, reverse=False)对原列表进行排序 |
10 | list.clear()清空列表 |
11 | list.copy()复制列表 |
3.1 切片
- 索引:
既有正数索引,也有负数索引,正数以0开始,负数-1为末尾的开始位置
对于切片来讲,遵循左闭右开原则,也就是说 最初索引可以取到,最后的索引则不取 - 例如如图所示:
- 实践:
sl Out[3]: ['D', 'r', 'e', 'a', 'm'] sl[0] Out[4]: 'D' sl[-1] Out[5]: 'm' sl[-5] Out[6]: 'D' sl[2:4]#输出第3到4个字符 Out[7]: ['e', 'a'] sl[2:] Out[8]: ['e', 'a', 'm'] sl[-5:] Out[9]: ['D', 'r', 'e', 'a', 'm']
3.2 列表删除 (常用 切片)
list = [1,2,3,4,5,6,7,8] del list[1:3] #list[1:3] = [] #这两种删除方法是一样的,但是如果对单个对象(不用切片)就[]的话,就会 print(list) [1, 4, 5, 6, 7, 8] list = [1,2,3,4,5,6,7,8]#如此 list[3] = [] print(list) [1, 2, [], 4, 5, 6, 7, 8, 9, 10, 11, 12] list[:2]=[] [3,4,5,6,7,8]
3.3 列表的切片查询
- 查询
s=[1,991,127,8,9,10,11,12] s.index(12,0,8) s.index(12,0,7)
索引遵循左闭右开,不包括 下标8,所以第二行查询会报错,如下:
list = [1,2,3,4,5,6,7,8] print(list[-7:-1:1]) print(list[-1]) print(list[1]) print(list[-1:-9:-1]) print(list[-4:-8:-1]) print(list[4:0:-1]) print(list[4:-8:-1]) [2, 3, 4, 5, 6, 7] 8 2 [8, 7, 6, 5, 4, 3, 2, 1] [5, 4, 3, 2] [5, 4, 3, 2] [5, 4, 3, 2]
- 列表生成式
#列表生成式 print([i*i for i in range(1,10) if 过滤条件]) # i*i 中的 i 表示列表元素的表达式 # for 后的 i 表示自定义变量 , range()表示可迭代对象 [1, 4, 9, 16, 25, 36, 49, 64, 81]
- 列表支持运算 + *,内部实现了运算符重载
sl Out[10]: ['D', 'r', 'e', 'a', 'm'] sl*2 Out[11]: ['D', 'r', 'e', 'a', 'm', 'D', 'r', 'e', 'a', 'm'] ['M','y']+sl Out[14]: ['M', 'y', 'D', 'r', 'e', 'a', 'm']
3.4 总结
另外,在以后 如果对Python进行进一步的学习,那么会遇到Numpy库,包括许多数据分析,机器学习都会用到该库,以及一种高级索引范式,在高级索引中支持更多的用法(“奇技淫巧”),等待你的进一步探索!
列表的操作比较简单,需要注意的就是 对于切片索引的掌控。这一点要着重理解与实践,可以说列表索引在以后的Python程序中是家常便饭般的存在,学好索引与切片,才能学好列表,为以后Python的学习奠定坚实的基础。
🌹写在最后💖: 路漫漫其修远兮,吾将上下而求索!伙伴们,再见!🌹🌹🌹