在Python中,列表是一种非常灵活的数据结构,它允许存储不同类型的数据项,并通过方括号[ ]
来标识。列表中的数据项用逗号,
分隔。列表的一个显著特点是它们是可变的,这意味着列表中的任何数据项都可以被替换,这与元组不同,后者是不可变的。
列表的索引有两种类型:正索引和负索引。正索引从0开始,从左到右计数;负索引从右到左计数,最右边的元素索引值为-1。例如,给定列表a = ['Hello', 1, 4.63, True, "World", 2.0, "False"]
,正索引和负索引的示例如下:
基于元素索引,还可以对列表进行切片操作。例如,对于上面定义的列表a
,a[2 : 5]
将返回[4.63, True, "World"]
,而a[ : ]
将返回整个列表,a[-1: -3 : -1]
将返回["False", 2.0]
。
列表允许用新值替换现有的数据项。例如,对于列表a
,如果执行a[1] = 2
,然后打印a
,将得到['Hello', 2, 4.63, True, "World", 2.0, "False"]
。
除了上述操作,Python列表还提供了许多其他功能来满足不同需求。以下是一些适合初学者的Python列表操作实例:
给定一个包含8个整数的列表list1
,可以通过比较排序前后的列表来判断它是否已经按升序排列。以下是Python代码实现:
list1 = [1, 2, 3, 5, 4, 8, 7, 9]
temp_list = list1[:]
list1.sort()
if temp_list == list1:
print("给定列表是按升序排列的")
else:
print("给定列表不是按升序排列的")
给定一个包含10个整数的列表list2
,需要找出其中的偶数。使用for循环遍历列表,并检查每个元素是否能被2整除。以下是Python代码实现:
list2 = [2, 3, 7, 5, 10, 17, 12, 4, 1, 13]
for i in list2:
if i % 2 == 0:
print(i)
给定两个列表list3
和list4
,可以使用.extend()
方法将它们合并为一个列表。以下是Python代码实现:
list3 = [1, 2, 4, 6]
list4 = [9, 3, 19, 7]
list3.extend(list4)
print(list3)
给定一个列表list5
,可以通过索引来交换第一个和最后一个元素的值。以下是Python代码实现:
list5 = [1, 29, 51, 9, 17, 6, 7, 23]
list5[0], list5[-1] = list5[-1], list5[0]
print(list5)
给定两个列表a
和b
,可以通过找出在a
中但不在b
中的元素来实现列表的减法。以下是Python代码实现:
a = [1, 2, 3, 5]
b = [1, 2]
l1 = []
for i in a:
if i not in b:
l1.append(i)
print(l1)
x = [1,2,3,4,5,1,3,3,4]
l1 = []
for i in x:
if x.count(i) % 2 != 0:
if i not in l1:
l1.append(i)
print(l1)