列表
列表是什么
列表是一种数据结构,计算机中有多种存储方式,而列表就是其中一种。列表可以保存多个有序的数据,可以通过索引来查看列表中的元素。
列表也是一个对象。列表中可以保存任意的对象
如何创建列表
通过 lst=[] 或者 lst=list() 可以创建一个空列表,
列表的使用
列表的通用操作
列表可以通过 索引(index) 来获取列表中的元素
例如
lst = [1,2,3,4,5,6,7]
print(lst[0])
返回的结果为1
因为列表的索引是从0开始的,当然索引的范围超过了列表,返回的结果会提示报错,当索引为-1时候,则会返回倒数第一个元素。
两个列表相加
lst = ['fd','dsf','sdf']
lst1 = ['fdg','fg','fghf']
print(lst+lst1)
返回的结果为 [‘fd’, ‘dsf’, ‘sdf’, ‘fdg’, ‘fg’, ‘fghf’]
列表与整型相乘
lst = ['a','b','c']
print(lst*3)
返回的结果为
[‘a’, ‘b’, ‘c’, ‘a’, ‘b’, ‘c’, ‘a’, ‘b’, ‘c’]
用in 和not in来检测元素是否在列表中,返回的结果为逻辑值
例如:
lst = [1,2,3,4,5,6,7,8,9,10]
numA = int(input('请输入numA'))
numB = int(input('请输入numB'))
if numA in lst:
print('numA在列表lst中',end=' ')
else:
print('numA不在列表lst中',end=' ')
if numB in lst:
print('numB在列表lst中')
else:
print('numB不在列表lst中')
当in结果为True的时候返回的结果为if里的内容,反之则为not in返回else里的内容
min()和max()
这两个函数并不陌生,这是大小兄弟,一个min()代表最小值,一个max()代表代表最大值,
lst = [1,2,3,4,5,6,7,7]
print(max(lst))
print(min(lst))
返回的结果为
7
1
因为7是lst中最大的,1是lst中最小的
列表中的两个方法
index()和count() index()可以根据列表的元素返回该元素在列表中的索引。
count()可以统计指定元素在列表中出现的次数
lst = ['绿巨人','美国队长','蜘蛛侠','黑寡妇','黑寡妇']
print(lst.index('美国队长'))
print(lst.count('黑寡妇'))
返回的结果为
1
2
1代表的意思是美国队长在lst中的索引为1,2表示黑寡妇在lst中出现的次数为2。
列表切片
列表的索引可以是负数
列表的第一个索引为0,一次类推
列表的倒数第一个索引为-1,一次类推
切片操作的时候返回的列表是新的列表,不会影响原来的列表
hero = [1,2,3,4,5,6,7,8]
print('原来的列表',hero)
print('修改后的列表',hero[1:])
print('修改后的列表',hero[::-1])
执行后返回
原来的列表 [1, 2, 3, 4, 5, 6, 7, 8]
修改后的列表 [2, 3, 4, 5, 6, 7, 8]
修改后的列表 [8, 7, 6, 5, 4, 3, 2, 1]
Process finished with exit code 0
其中,hero[1:]的意思为从索引1到最后一个索引,
切片操作的语法大致为 列表名[开始索引:结束索引:步数]
修改列表
hero = [1,2,3,4,5,6,7,8]
hero[0] = 5
print(hero)
返回的结果为
[5, 2, 3, 4, 5, 6, 7, 8]
等于说hero原先的值已经被修改了
通过del来删除或者删除列表中的元素
hero = [1,2,3,4,5,6,7,8]
del hero[1]
print(hero)
del hero[:]
print(hero)
执行后返回的结果为
[1, 3, 4, 5, 6, 7, 8]
[]
Process finished with exit code 0
当第一个del 的时候删除的是hero[1],所以第一个print(hero)里面的2被删除了,
第二个del的时候删除的是列表的全部索引,所以返回的结果为空列表
列表的常用方法
方法 | 作用 |
---|---|
append() | 从列表的末尾添加一个元素 |
insert() | 从列表的指定位置添加一个元素,lst.insert(3,‘world’)就是向列表索引3的位置添加world |
extend() | 从列表的末尾添加一个新的列表,lst.extend([1,2,3,])就是向列表末尾添加一个新的列表[1,2,3] |
clear() | 将列表的所有元素清空 |
pop() | 根据索引删除元素并返回那个元素 ,如果不输入索引默认删除最大索引的那个元素 |
remove() | 删除指定的元素,如果元素重复则删除第一个 |
reverse() | 反转列表 |
sort() | 将列表中的元素按大小排序 |