041❤列表类型内置方法
一、用途
按照索引顺序存储多个值,多个装备,多个爱好,多门课程,多个朋友
二、定义
[]
内可以有多个任意类型的值,使用逗号分割元素
my_hobbies =['sing','jump','rap','basketball']
print(my_hobbies)
#['sing', 'jump', 'rap', 'basketball']
类型转换
但凡能够被for循环遍历的类型都可以当做参数传给list ( )转成列表
l = list('hello world')
print(f'l:{l}')
#l:['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd']
s = list({'s1':'123','s2':'456'})
print(s)
#['s1', 's2']
三、常用操作+内置方法
3.1按索引取值
正向+反向取值,既可以存也可以取
索引不存在的则进行报错
name = ['lwx','hanye','haha']
print(name[1])
print(name[-1])
print(name[:2])
#hanye
#haha
#['lwx', 'hanye']
3.2 切片
name = ['lwx','hanye','haha','happy','hiahiahia']
print(name[0::2])
# ['lwx', 'haha', 'hiahiahia']
3.3 长度
#返回列表长度(元素个数)
name = ['lwx','hanye','haha','happy','hiahiahia']
print(len(name))
#5
3.4 成员运算 in和not in
#判断元素是否在列表中
name = ['lwx','hanye','haha','happy','hiahiahia']
print('lalala' not in name)
print('lwx'and 'hanye' in name)
#True
# True
3.5 追加值
#在结尾追加
name = ['lwx','hanye','haha','happy','hiahiahia']
name.append('forever')
print(name)
# ['lwx', 'hanye', 'haha', 'happy', 'hiahiahia', 'forever']
3.6 删除
#通用的删除方法,且没有返回值
name = ['lwx','hanye','haha','happy','hiahiahia']
del name[4]
print(name)
# ['lwx', 'hanye', 'haha', 'happy']
#删除多个元素
name = ['lwx','hanye','haha','happy','hiahiahia']
del name[2:]
print(name)
# ['lwx', 'hanye']
3.7 循环
name = ['lwx','hanye','haha','happy','hiahiahia']
for i in name:
print(i)
# lwx
# # hanye
# # haha
# # happy
# # hiahiahia
四、其他操作
4.1 insert()
#插入值,可以指定位置
name = ['lwx','hanye','haha','happy','hiahiahia']
name.insert(1,'like')
name.insert(3,'forever')
print(name)
# ['lwx', 'like', 'hanye', 'forever', 'haha', 'happy', 'hiahiahia']
4.2 pop()
#list之pop(索引),不写索引pop()默认删除最后一个元素
name = ['lwx','hanye','haha','happy','hiahiahia']
name.pop()
print(name)
name.pop(2)
print(name)
# ['lwx', 'hanye', 'haha', 'happy']
# # ['lwx', 'hanye', 'happy']
#POP的返回值为删除的元素
name = ['lwx','hanye','haha','happy','hiahiahia']
res = name.pop(2)
print(res)
# haha
4.3 remove()
#移除元素,如果没有这个元素则报错
name = ['lwx','hanye','haha','happy','hiahiahia']
name.remove('hiahiahia')
print(name)
# ['lwx', 'hanye', 'haha', 'happy']
#remove的返回值为None
name = ['lwx','hanye','haha','happy','hiahiahia']
res = name.remove('hiahiahia')
print(res)
# None
4.4 count()
#对;列表中某一元素出现的次数进行统计
name = ['lwx','hanye','haha','happy','hiahiahia','lwx','hanye']
print(name.count('hanye'))
#2
4.5 index()
#返回列表中某一元素对应的索引
name = ['lwx','hanye','haha','happy','hiahiahia','lwx','hanye']
print(name.index('haha'))
#2
4.6 clear()
#清空列表
name = ['lwx','hanye','haha','happy','hiahiahia','lwx','hanye']
name.clear()
print(name)
#[]
4.7 copy()
#复制列表
name = ['lwx','hanye','haha','happy','hiahiahia']
name2= name.copy()
print(name2)
# ['lwx', 'hanye', 'haha', 'happy', 'hiahiahia']
4.8 extend()
#把可迭代对象放进另一个列表后面
name1 = ['lwx','hanye','haha','happy','hiahiahia']
name2 = ['520']
name1.extend(name2)
print(name1)
# ['lwx', 'hanye', 'haha', 'happy', 'hiahiahia', '520']
l = [1,2,3,4]
s= '123'
l.extend(s)
print(l)
# [1, 2, 3, 4, '1', '2', '3']
4.9 reverse()
#反转顺序,不是排序,只是将列表倒过来
name = ['lwx','hanye','haha','happy','hiahiahia']
l = name.reverse()
print(name)
# ['hiahiahia', 'happy', 'haha', 'hanye', 'lwx']
4.10 sort()
#排序操作
# 列表中必须全部为同一类型的元素才可以进行排序
l1 = [1,5,7,8,9,3,5] #默认从小到大的升序
l1.sort()
print(l1)
# [1, 3, 5, 5, 7, 8, 9]
l2 = [1,5,7,8,9,3,5]
l2.sort(reverse=True) #从大到小的降序
print(l2 )
# [9, 8, 7, 5, 5, 3, 1]
五、存一个或多个值
用于存储多个值
六、有序或无序
列表是有序的,可以按照索引取值
hobby_list = ['read', 'run', 'girl']
print(f'first:{id(hobby_list)}')
hobby_list[2] = ''
print(f'second:{id(hobby_list)}')
# first:35552776
# second:35552776
七、可变或不可变
是可变数据类型
八、大小比较
字符串的大小是按照ASCT码表的先后顺序加以区别,表中排在后面的字符大于前面的字符
print('a'>'b')
print( 'abz'>' abcdefa')
# False
# True
列表也可以比大小,原理同字符串样,但是对应位置的元素必须是同种类型
l1=[1,'abc','zaa']
l2=[1,'abc',' zb']
print(l1 < l2)
# False
九、队列和堆栈
9.1 队列
# 队列:FIFO,先进先出
l = []
#入栈操作
l.append('first')
l.append('second')
l.append('third')
print(l)
#出队操作
print(l.pop(0))
print(l.pop(0))
print(l.pop(0))
# ['first', 'second', 'third']
# first
# second
# third
9.2 堆栈
# 2、堆栈: LIFO,后进先出
l = []
#入栈操作
l.append('first')
l.append('second')
l.append('third')
print(l)
#出队操作
print(l.pop())
print(l.pop())
print(l.pop())
# ['first', 'second', 'third']
# third
# second
# first
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步