[Python] 列表操作及方法总结
本文主要讲解Python列表的概念及用法
列表是Python中最基本的数据结构,也是最常用的Python数据类型
列表的数据项不是必须都要具有相同的类型
列表中的每个元素都分配一个数字来标记它的位置(索引),第一个元素索引值是0,第二个元素索引值是1,依此类推
列表的作用是有序的保存任意类型数据
1.创建列表
直接赋值创建列表格式如下所示:
列表名 = [元素1, 元素2, ...]
aList = [1, 2, 3, 4, 5]
# [1, 2, 3, 4, 5]
print(aList)
# 创建一个列表,可用来存储各种不同类型的数据
bList = ["hello", True, 10, 3.14]
# # ['hello', True, 10, 3.14]
print(bList)
使用内置函数list()创建列表
aList = list('Hello')
# ['H', 'e', 'l', 'l', 'o']
print(aList)
bList = list('123456')
# ['1', '2', '3', '4', '5', '6']
print(bList)
创建空列表
aList = []
print(aList) # []
bList = list()
print(bList) # []
列表推导式创建列表
列表推导式是Python构建列表list的一种快捷方式,可以使用简洁的代码创建出一个列表
Python列表推导式https://blog.csdn.net/Hudas/article/details/122850039
2.列表常见操作方法
2.1索引
列表中的所有元素都是有编号的,即我们所说的索引值,从0开始递增
我们可以使用索引来获取元素
aList = [10,20,30,40,50]
print(aList[0]) # 10
print(aList[2]) # 30
print(aList[4]) # 50
print(aList[-1]) # 50
2.2切片
除了使用索引访问单个元素外,我们还可以使用切片(slicing)来访问特定范围内的元素
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
nums[2:5] # [3, 4, 5]
nums[3:-2] # [4, 5, 6, 7, 8, 9, 10]
扩展补充资料
Python切片操作https://blog.csdn.net/Hudas/article/details/125905111
2.3计算列表元素个数
len(list)可用于获取列表长度
注明:list代表列表
aList = [1,2,3,4,5]
print(len(aList)) # 5
2.4判断元素是否存在于列表中
运算符in可用于检查特定的值是否包含在列表list中,包含在内则返回True,不包含在内则返回False
users = ['Andy', 'Tian', 'Lee']
print('Andy' in users) # True
print('Rita' in users) # False
扩展:not in判断指定元素是否不在列表list中
users = ['Andy', 'Tian', 'Lee']
print('Andy' not in users) # False
print('Rita' not in users) # True
2.5组合列表
可使用加法运算符+来拼接列表
# [1, 2, 3, 4, 5, 6]
print([1,2,3] + [4,5,6])
# Hello World!!
print('Hello ' + 'World!!')
# TypeError: can only concatenate list (not "str") to list
print([1,2,3] + 'Andy')
2.6重复列表
将列表与数x相乘时,将重复这个列表x次来创建一个新列表
# [1, 1, 1, 1, 1]
print([1] * 5)
# [1, 2, 1, 2, 1, 2]
print([1,2] * 3)
2.7获取列表中元素的最大值与最小值
max()可获取列表元素的最大值
min()可获取列表元素的最小值
numbers = [1, 20, 300, 4000]
# 获取最大值
print(max(numbers)) # 4000
# 获取最小值
print(min(numbers)) # 1
2.8统计某个元素在列表中出现的次数
count()用于计算指定元素在列表中出现了多少次
aList = ['to','be','or','not','to','be']
print(aList.count('to')) # 2
bList = [[1, 2],1, 1,[2, 1, [1, 2]]]
print(bList.count(1)) # 2
print(bList.count([1, 2])) # 1
2.9查找列表指定值第一次出现的索引
index()可以从列表中找出某个值第一个匹配项的索引位置
aList = ['What','is','the','weather','like','today','?']
aList.index('like') # 4
# 报错,ValueError: 'are' is not in list
aList.index('are')
2.10反转列表中元素
reverse()函数用于反向列表中元素
aList = [123, 'xyz', 'zara', 'abc', 'xyz']
aList.reverse()
# ['xyz', 'abc', 'zara', 'xyz', 123]
print(aList)
扩展补充知识
reverse()函数 VS reversed()函数https://blog.csdn.net/Hudas/article/details/126717575
2.11添加列表元素
insert()用于将指定对象插入列表的指定位置
numbers = [1, 2, 3, 5, 6, 7]
numbers.insert(3,'four')
# [1, 2, 3, 'four', 5, 6, 7]
print(numbers)
我们也可以使用切片赋值来获得与insert()一样的效果
numbers = [1, 2, 3, 5, 6, 7]
numbers[3:3] = ['four']
# [1, 2, 3, 'four', 5, 6, 7]
print(numbers)
扩展补充知识
insert()方法https://blog.csdn.net/Hudas/article/details/122967923
append()用于在列表末尾添加新的元素(追加单个数据)
aList = [1, 2, 3, 4]
aList.append(5)
# [1, 2, 3, 4, 5]
print(aList)
aList = [1, 2, 3, 4]
lst = [5, 6]
aList.append(lst)
# [1, 2, 3, 4, [5, 6]]
print(aList)
extend()用于将多个元素附加到列表末尾(追加多个数据)
aList = [1, 2, 3]
lst = [4, 5, 6]
aList.extend(lst)
# [1, 2, 3, 4, 5, 6]
print(aList)
我们也可以使用切片赋值来获得与extend()一样的效果
aList = [1, 2, 3]
lst = [4, 5, 6]
aList[len(aList):] = lst
# [1, 2, 3, 4, 5, 6]
print(aList)
2.12删除列表元素
del语句可以删除列表中指定的元素
语法格式: del list[index]
names = ['Andy', 'Lee', 'Odin', 'Rita', 'Summer']
del names[3]
# ['Andy', 'Lee', 'Odin', 'Summer']
print(names)
remove()用于移除列表中某个值的第一个匹配项
aList = [123, 'xyz', 'zara', 'abc', 'xyz']
aList.remove('xyz')
print("List : ", aList) # List : [123, 'zara', 'abc', 'xyz']
aList.remove('abc')
print("List : ", aList) # List : [123, 'zara', 'xyz']
扩展补充知识
remove()方法https://blog.csdn.net/Hudas/article/details/122849706
pop()可以从列表中删除一个元素(默认为最后一个元素),并返回这一个元素
aList = [1, 2, 3]
aList.pop() # 3
print(aList) # [1, 2]
aList.pop(0) # 1
print(aList) # [2]
扩展补充知识
pop()函数https://blog.csdn.net/Hudas/article/details/126706352
clear()用于清空列表中的所有元素
aList = [1, 2, 3, 4, 5]
aList.clear()
print(aList) # []
扩展知识
切片赋值语句list[:] = []也可以实现clear()功能
aList = [1, 2, 3, 4, 5]
aList[:] = []
print(aList) # []
2.13列表排序
sort()方法可以对原列表进行排序
aList = [4, 6, 2, 1, 7, 9]
aList.sort()
# [1, 2, 4, 6, 7, 9]
print(aList)
sorted()函数同样也可以对列表进行排序
aList = [4, 6, 2, 1, 7, 9]
bList = sorted(aList)
# [4, 6, 2, 1, 7, 9]
print(aList)
# [1, 2, 4, 6, 7, 9]
print(bList)
补充扩展知识
sort()方法 VS sorted()函数https://blog.csdn.net/Hudas/article/details/122884550
2.14复制列表
copy()用于复制列表
aList = [1, 2, 3]
bList = aList.copy()
bList[1] = 4
print(aList) # [1, 2, 3]
print(bList) # [1, 4, 3]
2.15列表转换成字符串
join()可以将列表转换成字符串
list = ["Hello", "World", "!"]
# 'Hello World !'
" ".join(list)
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)