python中list列表

介绍

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]

猜你喜欢

转载自blog.csdn.net/u014542122/article/details/80089435