Python 编程语言中有四种集合数据类型:
选择集合类型时,了解该类型的属性很有用。
为特定数据集选择正确的类型可能意味着保留含义,并且可能意味着提高效率或安全性。
列表是一个有序且可更改的集合。在 Python 中,列表用方括号编写。
创建列表:
thislist = ["apple", "banana", "cherry"]print(thislist)
您可以通过引用索引号来访问列表项:
打印列表的第二项:
thislist = ["apple", "banana", "cherry"]print(thislist[1])
负索引表示从末尾开始,-1 表示最后一个项目,-2 表示倒数第二个项目,依此类推。
打印列表的最后一项:
thislist = ["apple", "banana", "cherry"]print(thislist[-1])
您可以通过指定范围的起点和终点来指定索引范围。
指定范围后,返回值将是包含指定项目的新列表。
返回第三、第四、第五项:
thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]print(thislist[2:5])
注释:搜索将从索引 2(包括)开始,到索引 5(不包括)结束。
请记住,第一项的索引为 0。
如果要从列表末尾开始搜索,请指定负索引:
此例将返回从索引 -4(包括)到索引 -1(排除)的项目:
thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]print(thislist[-4:-1])
如需更改特定项目的值,请引用索引号:
更改第二项:
thislist = ["apple", "banana", "cherry"]thislist[1] = "mango"print(thislist)
您可以使用 for 循环遍历列表项:
逐个打印列表中的所有项目:
thislist = ["apple", "banana", "cherry"]for x in thislist: print(x)
您将在 Python For 循环 这一章中学习有关 for 循环的更多知识。
如需确定列表中是否存在指定的项,请使用 in 关键字:
检查列表中是否存在 “apple”:
thislist = ["apple", "banana", "cherry"]if "apple" in thislist: print("Yes, 'apple' is in the fruits list")
如需确定列表中有多少项,请使用 len() 方法:
打印列表中的项目数:
thislist = ["apple", "banana", "cherry"]print(len(thislist))
如需将项目添加到列表的末尾,请使用 append() 方法:
使用 append() 方法追加项目:
thislist = ["apple", "banana", "cherry"]thislist.append("orange")print(thislist)
要在指定的索引处添加项目,请使用 insert() 方法:
插入项目作为第二个位置:
thislist = ["apple", "banana", "cherry"]thislist.insert(1, "orange")print(thislist)
有几种方法可以从列表中删除项目:
remove() 方法删除指定的项目:
thislist = ["apple", "banana", "cherry"]thislist.remove("banana")print(thislist)
pop() 方法删除指定的索引(如果未指定索引,则删除最后一项):
thislist = ["apple", "banana", "cherry"]thislist.pop()print(thislist)
del 关键字删除指定的索引:
thislist = ["apple", "banana", "cherry"]del thislist[0]print(thislist)
del 关键字也能完整地删除列表:
thislist = ["apple", "banana", "cherry"]del thislist
clear() 方法清空列表:
thislist = ["apple", "banana", "cherry"]thislist.clear()print(thislist)
您只能通过键入 list2 = list1 来复制列表,因为:list2 将只是对 list1 的引用,list1 中所做的更改也将自动在 list2 中进行。
有一些方法可以进行复制,一种方法是使用内置的 List 方法 copy()。
使用 copy() 方法来复制列表:
thislist = ["apple", "banana", "cherry"]mylist = thislist.copy()print(mylist)
制作副本的另一种方法是使用内建的方法 list()。
使用 list() 方法复制列表:
thislist = ["apple", "banana", "cherry"]mylist = list(thislist)print(mylist)
在 Python 中,有几种方法可以连接或串联两个或多个列表。
最简单的方法之一是使用 + 运算符。
合并两个列表:
list1 = ["a", "b" , "c"]list2 = [1, 2, 3]list3 = list1 + list2print(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)
也可以使用 list() 构造函数创建一个新列表。
使用 list() 构造函数创建列表:
thislist = list(("apple", "banana", "cherry")) # 请注意双括号print(thislist)