Python 中,列表(List)是一种用于存储多个元素的可变序列。列表可以包含不同类型的元素,比如整数、浮点数、字符串甚至其他列表。列表在编程中非常常用,因其灵活性和强大的操作功能。序列是Python中最基本的数据结构。

1、List(列表)

可以使用方括号 [] 来创建一个列表。

例如:

创建一个列表:

# 创建一个空列表
empty_list = []

# 创建一个包含多个元素的列表
numbers = [1, 2, 3, 4, 5]

print(numbers)

# 列表可以包含不同类型的元素
mixed_list = [1, "cjavapy", 3.14, [1, 2, 3]]

print(mixed_list)

2、访问list列表中元素

可以使用索引来访问列表中的元素,索引从 0 开始。

例如:

# 创建一个空列表
empty_list = []

# 创建一个包含多个元素的列表
numbers = [1, 2, 3, 4, 5]

print(numbers)

# 列表可以包含不同类型的元素
mixed_list = [1, "cjavapy", 3.14, [1, 2, 3]]

print(mixed_list)

print(numbers[0])  # 输出: 1
print(mixed_list[1])  # 输出: cjavapy
print(mixed_list[3][1])  # 输出: 2(访问嵌套列表中的元素)

1)负索引

负索引表示从最后开始,-1表示最后一项,-2表示倒数第二项,依此类推。

例如:

打印列表的最后一项:

# 创建一个空列表
empty_list = []

# 创建一个包含多个元素的列表
numbers = [1, 2, 3, 4, 5]

print(numbers)

# 列表可以包含不同类型的元素
mixed_list = [1, "cjavapy", 3.14, [1, 2, 3]]

print(mixed_list)

print(numbers[-3])  # 输出: 3
print(mixed_list[-3])  # 输出: cjavapy

2)索引范围(切片)

可以使用切片语法来获取列表的子列表。

例如:

# 创建一个空列表
empty_list = []

# 创建一个包含多个元素的列表
numbers = [1, 2, 3, 4, 5]

# 列表可以包含不同类型的元素
mixed_list = [1, "cjavapy", 3.14, [1, 2, 3]]

sub_list = numbers[1:3]
print(sub_list)  # 输出: [2, 3]

# 省略起始索引表示从头开始,省略结束索引表示到末尾结束
print(numbers[:2])  # 输出: [1, 2]
print(numbers[2:])  # 输出: [3, 4, 5]

请记住,第一项的索引为0。

通过省略起始值,范围将从第一项开始:

例如:

本示例将项目从开头返回到"cjavapy":

thislist = ["c", "java", "python", "cjavapy", "js", "linux", "docker"]
print(thislist[:4])

通过省略结束值,范围将继续到列表的末尾:

例如:

本示例输出从"python"到列表的末尾:

thislist = ["c", "java", "python", "cjavapy", "js", "linux", "docker"]
print(thislist[2:])

3)负索引范围(切片)

如果要从列表末尾开始搜索,请指定负索引:

例如:

# 创建一个空列表
empty_list = []

# 创建一个包含多个元素的列表
numbers = [1, 2, 3, 4, 5]

# 列表可以包含不同类型的元素
mixed_list = [1, "cjavapy", 3.14, [1, 2, 3]]


# 省略起始索引表示从头开始,省略结束索引表示到末尾结束
print(numbers[:-2])  # 输出: [1, 2, 3]
print(numbers[-2:])  # 输出: [4, 5]

4、改变列表中元素的值

列表中元素值可以通过索引进行修改。

例如:

# 列表可以包含不同类型的元素
mixed_list = [1, "cjavapy", 3.14, [1, 2, 3]]

print(mixed_list)

mixed_list[1] = "hello"
print(mixed_list)

5、循环遍历列表(List)

可以使用 for 循环遍历列表中的元素。

例如:

numbers = [1, 2, 3, 4, 5]

for num in numbers:
    print(num)

相关文档Python for循环语句

6、判断列表中元素是否存在

要确定列表中是否存在指定的元素,请使用in关键字:

例如:

mixed_list = [1, "cjavapy", 3.14, [1, 2, 3]]

print("cjavapy" in mixed_list)  

7、列表生成器

当您要基于现有列表的值创建新列表时,列表生成器表达式提供了一种较短的语法。

例如:

langs = ["c", "java", "python", "linux", "docker"]
newlist = []

for x in langs:
    if "a" in x:
        newlist.append(x)

print(newlist)

使用列表生成器,只需一行代码即可完成所有这些工作:

例如:

langs = ["c", "java", "python", "linux", "docker"]

newlist = [x for x in langs if "a" in x]

print(newlist)

列表生成器用方括号括起来,包含一个或多个for语句,零个或多个if语句,并返回一个新列表。

8、List列表长度

要确定列表中有多少元素,请使用len()函数:

例如:

打印列表中的元素数:

thislist = ["c", "java", "python"]
print(len(thislist))

9、列表中添加元素

要将元素添加到列表的末尾,请使用append()方法:

例如:

使用append()方法添加元素:

thislist = ["c", "java", "python"]
thislist.append("cjavapy") print(thislist)

要在指定的索引处添加元素,请使用insert()方法:

例如:

插入一个元素作为第二个位置:

thislist = ["c", "java", "python"]
thislist.insert(1, "cjavapy") print(thislist)

10、删除列表中元素

有几种方法可以从列表中删除元素:

例如:

remove()方法删除指定的元素:

thislist = ["c", "java", "python"]
thislist.remove("java") print(thislist)

例如:

pop()方法将删除指定的索引(如果未指定index,则删除最后一项):

thislist = ["c", "java", "python"]
thislist.pop() print(thislist)

例如:

del关键字删除指定的索引:

thislist = ["c", "java", "python"]
del thislist[0] print(thislist)

例如:

del关键字也可以完全删除列表:

thislist = ["c", "java", "python"]
del thislist

例如:

clear()方法清空列表:

thislist = ["c", "java", "python"]
thislist.clear() print(thislist)

11、复制list列表

不能简单地通过输入list2 = list1来复制列表,因为list2只是对list1的引用,对list1所做的更改也会自动地对list2进行更改。

有很多方法可以制作副本,一种方法是使用内置的List方法copy()

例如:

使用copy()方法制作列表的副本:

thislist = ["c", "java", "python"]
mylist = thislist.copy() print(mylist)

另一种复制方法是使用内置方法list()

例如:

使用list()方法复制列表:

thislist = ["c", "java", "python"]
mylist = list(thislist) print(mylist)

12、join连接两个list列表

在Python中,有几种方法可以连接或连接两个或多个列表。

最简单的方法之一是使用+运算符。

例如:

连接两个列表:

list1 = ["a", "b" , "c"]
list2 = [1, 2, 3]

list3 = list1 + list2
print(list3)

联接两个列表的另一种方法是将list2中的所有项一个接一个地追加到list1中:

例如:

将list2追加到list1中:

list1 = ["a", "b" , "c"]
list2 = [1, 2, 3]

for x in list2:
    list1.append(x)

print(list1)

或者,可以使用extend()方法,其目的是将一个列表中的元素添加到另一列表中:

例如:

使用extend()方法将list2添加到list1的末尾:

list1 = ["a", "b" , "c"]
list2 = [1, 2, 3]

list1.extend(list2)
print(list1)

13、list()构造函数 

也可以使用list()构造函数创建一个新列表。

例如:

使用list()构造函数创建一个列表:

thislist = list(("c", "java", "python")) # 注意双括号
print(thislist)

14、list列表方法

Python有一组内置方法,您可以在列表上使用它们。

方法

描述

append()

在列表末尾添加元素

clear()

从列表中删除所有元素

copy()

返回列表的副本

count()

返回具有指定值的元素数

extend()

将列表(或任何可迭代)的元素添加到当前列表的末尾

index()

返回具有指定值的第一个元素的索引

insert()

在指定位置添加元素


pop()

删除指定位置的元素

remove()

删除具有指定值的项目

reverse()

颠倒列表的顺序

sort()

排序列表

推荐文档