介绍
list是有序的元素序列,下标从0开始。元素可以是python中任意的数据类型并且可修改~
语法
以中括号括起来,每个元素以英文逗号分割
# 列表中的元素可以是:数字、字符串、布尔值、列表、元组、字典
li = [123, "我爱你", True, [], (), {}]
print(li)
# 输出=>[123, '我爱你', True, [], (), {}]
常用技巧
遍历列表中的每个元素
li = ["我", "爱", "你"]
for item in li:
print(item)
# 输出=> 我
# 爱
# 你
切片的方式取出指定下标范围的元素
li = ["我", "爱", "你"]
# 0:2 表示从索引0开始,知道索引2为止,但是不包括索引2,即索引0,1
print(li[0:2])
# 输出=>['我', '爱']
修改指定下标的元素
li = ["我", "爱", "你"]
# 将下标是2的元素修改成"猪婆"
li[2] = "猪婆"
print(li)
# 输出=>['我', '爱', '猪婆']
可使用del方式删除元素(删除的第四种方式,下方常用方法里还有三种方式)
li = ["我", "爱", "你"]
del li[2]
print(li)
# 输出=>['我', '爱']
# 使用del切片的方式删除
li2 = ["我", "爱", "你"]
del li2[0:2]
print(li2)
# 输出=>['你']
将列表中的元素转换成字符串
# 当全是字符串的时候
li = ["我", "爱", "你"]
print("".join(li))
# 输出=>我爱你
# 当是各种类型的时候需要自己手动循环咯,毕竟数字和字符串拼接的时候是报错的
li = [True, 1234, "我", "爱", "你"]
result = ""
for item in li:
result += str(item)
print(result)
# 输出=>True1234我爱你
常用方法
append(p_object):在列表末尾追加元素(添加元素的第一种方式)
li = ["我", "爱"]
li.append("你")
print(li)
# 输出=>我爱你
insert(index, p_object):在指定下标处加入元素(添加元素的第二种方式)
li = ["我", "爱", "你"]
li.insert(0, "猪婆")
print(li)
# 输出=>['猪婆', '我', '爱', '你']
# 当下标超出列表长度后,默认在列表末尾追加哦~
li1 = ["我", "爱", "你"]
li1.insert(10000, "猪婆")
print(len(li1))
# 输出=>4
# 当为-1时从右侧往左数哦,当负数超过列表长度后,将在列表第0个元素添加哦~
li2 = ["我", "爱", "你"]
li2.insert(-1, "猪婆")
print(li2)
# 输出=>['我', '爱', '猪婆', '你']
extend(iterable):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)(添加元素的第三种方式)
li = ["我", "爱", "你"]
# 将"一万年"这个列表加入到li的列表中去
li.extend(["一", "万", "年"])
print(li)
# 输出=>['我', '爱', '你', '一', '万', '年']
index(value, start=None, stop=None):从左侧开始搜寻给定的参数值在列表中的索引位置(如果搜寻不到则报错),如果start和end给定值则在指定范围内搜寻
# 从左侧开始搜寻,找到第一个后将停止搜寻
li = ["我", "爱", "你", "爱"]
print(li.index("爱"))
# 输出=>1
# 表明在第三个元素和第五个元素之间搜寻"爱"
print(li.index("爱", 2, 4))
# 输出=>3
# 当搜寻的元素在列表中不存在时将会报错
print(li.index("中"))
# 输出=>'中' is not in list
pop(index=None):根据下标位置删除元素,如果下标越界则报错,返回被删除的元素(删除的第一种方式)
li = ["我", "爱", "你"]
# 返回被删除的元素
print(li.pop(2))
# 输出=>你
print(li)
# 输出=>['我', '爱']
remove(value):根据给定的参数值从左侧删除元素,如果删除的元素不存在则报错(删除的第二种方式)
li = ["我", "爱", "你", "你"]
# 只会删除从左侧开始搜寻到的第一个元素
li.remove("你")
print(li)
# 输出=>['我', '爱', '你']
li2 = ["我", "爱", "你"]
li2.remove("猪婆")
# 输出=>ValueError: list.remove(x): x not in list
clear():清空列表(删除的第三种方式)
li = ["我", "爱", "你"]
li.clear()
print(li)
# 输出=>[]
copy():浅拷贝列表
li = ["我", "爱", "你"]
newli = li.copy()
print(newli)
# 输出=>['我', '爱', '你']
reverse():将列表元素反转
li = [1, 2, 3, 4]
li.reverse()
print(li)
# 输出=>[4, 3, 2, 1]
sort(key=None, reverse=False):排序
li = [1, 2, 4, 3]
li.sort()
print(li)
# 输出=>[1, 2, 3, 4]
# 表示逆序排序
li.sort(reverse=True)
print(li)
#输出=>[4, 3, 2, 1]