在Python中,列表List是常用的数据类型之一,本文就列表相关常见的函数和操作进行汇总,方便大家查漏补缺。
闲话少说,我们直接开始吧
我们一般使用中括号创建列表,如下所示:
list1 = []
当然我们也可以创建包含初始值的列表,如下所示:
list1 = [1,2,3]
我们可以简单地在列表里添加元素,用中括号括起来,用逗号分隔。需要注意的是列表中可以包含任何数据类型的元素。如下所示:
list1 = [1,2,3]
list2 = [3.14, 2.718]
list3 = ["apple", "orange"]
list4 = [True, [], None, {}]
# everything is valid here
一般来说列表的长度指的是列表中所拥有的元素的数量。如果我们需要得到列表的长度,我们一般使用内置的函数len
,如下所示:
list1 = ["apple", "orange", "pear"]
x = len(list1)
# x will be 3
假设我们有一个包含多个字符串的列表:
list1 = ["apple", "orange", "pear"]
上述列表中每个字符串都位于某个特定的位置(索引)。
"apple"
是列表中的第一个元素,索引值为0
"orange"
是列表中的第二个元素,索引值为1
"pear"
是列表中的第三个元素,索引值为2
0
的元素,样例代码如下:x = list1[0]
# x will be "apple"
当然索引值也可以是负数,此时我们从后面开始计数,如下:
list1 = ["apple", "orange", "pear"]
x = list1[-1]
# -1 means first element from the back
# x will be "pear"
y = list1[-2]
# -2 means second element from the back
# y will be "orange"
往列表中添加新的元素包括两种方式,第一为往列表尾部添加新的元素,第二种为往列表特定位置处添加新的元素。我们接下来一一进行介绍。
我们不妨假设我们有如下列表:
list1 = ["apple", "orange", "pear"]
如果此时我们需要往上述列表list1
的尾部添加新的元素durian
,此时我们可以使用append
函数,代码如下:
list1 = ["apple", "orange", "pear"]
list1.append("durian")
# list1 will now be ["apple", "orange", "pear", "durian"]
如果我们不希望在列表尾部添加元素durian``,而是希望在索引位置2
处插入,此时我们可以使用insert
函数,样例代码如下:
list1 = ["apple", "orange", "pear"]
list1.insert(2, "durian")
# list1 will now be ["apple", "orange", "durian", "durian"]
我们不妨假设我们有如下列表:
list1 = ["apple", "orange", "pear"]
如果我们希望将列表中第一个元素即索引值为0
的元素替换为pineapple
,我们可以如下操作:
list1 = ["apple", "orange", "pear"]
list1[0] = "pineapple"
# list1 will be ["pineapple", "orange", "pear"]
我们不妨假设我们有如下列表:
list1 = ["apple", "orange", "pear"]
如果我们希望将列表中第二个元素即索引值为1
的元素"orange"
进行删除,我们可以使用del
关键字进行如下操作:
del list1[1]
# list1 will now be ["apple", "pear"]
如果我们需要对上述列表进行遍历访问:
list1 = ["apple", "orange", "pear"]
最常用的使用for
循环进行访问的方法如下:
for fruit in list1:
print(fruit)
当然,我们也可以通过下述方式在访问列表元素的同时获取相应的索引,如下所示:
for i in range(len(list1)):
fruit = list1[i]
print(i, fruit)
一般使用in
操作符来判断列表中是否包含某个元素,样例代码如下:
list1 = ["apple", "orange", "pear"]
if "apple" in list1:
print("apple is inside list1")
else:
print("apple is not inside list1")
如果我们需要获取上述类别中,字符串 "orange"
的索引,我们可以简单的使用index
函数,代码如下:
list1 = ["apple", "orange", "pear"]
i = list1.index("orange")
# i will be 1 as "orange" is at index 1
需要注意的是,函数index
返回第一个找到的索引,如果列表中有多个"orange"
,第一个的索引将会作为函数index
的返回值。样例代码如下:
list1 = ["apple", "orange", "pear", "orange", "orange"]
i = list1.index("orange")
# i will still be 1
同时如果我们获取列表中不存在的元素的索引时,将会触发错误,如下:
i = list1.index("applepie")
# this will raise an error
假设我们有如下数字列表:
list1 = [4,5,6,4,4,5,6]
如果我们需要获取上述列表中元素4
在列表list1
中出现的次数,我们可以简单地使用count
函数来实现:
list1 = [4,5,6,4,4,5,6]
x = list1.count(4)
# x will be 3, as 4 appears 3 times inside list1
假设我们有如下数字列表:
list1 = [3,5,2,1,4]
我们希望对其进行从小到大排序,此时我们可以使用sort
和sorted
两个内置函数来实现上述功能。
使用sort
函数进行排序的样例代码如下:
list1 = [3,5,2,1,4]
list1.sort()
# list1 will be [1,2,3,4,5]
使用sorted
函数进行排序的样例代码如下:
list1 = [3,5,2,1,4]
list2 = sorted(list1)
# list2 will be [1,2,3,4,5]
# list1 will still be [3,5,2,1,4]
函数sort
和sorted
可以实现同样的功能,但是sorted
在对列表排序时对列表进行了拷贝,所以list1
还是保持原样。
本文重点介绍了Python中列表list
常见的操作和相应的应用场景,并给出了相关代码示例。
您学废了嘛?