python基础,Python中列表与元组的操作

文章目录

文章目录

前言

一、列表

1.1 什么是列表

1.2 列表的拼接

1.3 列表的遍历

 1.4 列表的重复

 1.5 返回索引

1.6 移除元素

 1.7 清空列表

 1.8 列表的逆序

二、元组

2.1 元组元素的查找

2.2 元组统计的用法

总结

前言

  在 Python 中,列表(List)和元组(Tuple)作为两种基础的序列类型,虽然都用于存储有序元素,但因各自的特性(可变性 vs 不可变性),在实际编程中承担着不同的角色,适用于不同场景。

一、列表

1.1 什么是列表

  列表(List) 是一种基础且常用的可变序列数据结构,用于存储一组有序的元素。它允许包含不同类型的数据(如整数、字符串、甚至其他列表等),并且支持动态修改(添加、删除、修改元素)。

1.2 列表的拼接

list1 += list2 或 list1.extend(list2)

list1 = [1, 2]
list2 = [3, 4]
list1 += list2  # list1 变为 [1, 2, 3, 4]

# 等价于 extend() 方法
list1.extend(list2)  # 效果同上

1.3 列表的遍历

直接遍历元素

fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)
# 输出:apple, banana, cherry

 通过索引遍历

fruits = ["apple", "banana", "cherry"]
for i in range(len(fruits)):
    print(i, fruits[i])
# 输出:0 apple, 1 banana, 2 cherry

 1.4 列表的重复

 list * n:将列表中的元素重复 n 次,返回新列表。

original = [1, 2]
repeated = original * 3  # [1, 2, 1, 2, 1, 2]

 1.5 返回索引

index:返回元素第一次出现的索引,若不存在则报错。为了防止报错一般余if联合使用。

if "apple" in fruits:
    print(fruits.index("apple"))

1.6 移除元素

pop():移除并返回列表中指定位置的元素。

fruits = ["apple", "banana", "cherry"]
last_fruit = fruits.pop()  # 移除并返回最后一个元素
print(last_fruit)  # 输出:cherry
print(fruits)      # 输出:['apple', 'banana']

remove():移除列表中第一个匹配的元素。

fruits = ["apple", "banana", "cherry", "banana"]
fruits.remove("banana")  # 移除第一个 "banana"
print(fruits)  # 输出:['apple', 'cherry', 'banana']

 1.7 清空列表

clear():用于清空列表中的所有元素,使列表变为空列表。

fruits = ["apple", "banana", "cherry"]
fruits.clear()  # 清空列表
print(fruits)  # 输出:[]

 1.8 列表的逆序

reverse() :直接修改原列表,将元素顺序反转。

nums = [1, 2, 3, 4]
nums.reverse()  # 原地逆序
print(nums)  # 输出:[4, 3, 2, 1]

二、元组

与列表相比元组的操作比较少,可以当做一个不变的列表,甚至可以说元组是一个常量。

2.1 元组元素的查找

index(): 其用法与列表(List)的 index() 方法类似,但由于元组是不可变类型,该方法仅用于查询,不支持修改操作。

tup = (10, 20, 30, 20)
print(tup.index(20))  # 输出:1(第一次出现的位置)

2.2 元组统计的用法

count() :统计某个元素在元组中出现的次数。

tup = (1, 2, 2, 3, 2)
print(tup.count(2))  # 输出:3(元素2出现3次)

总结

  元组(tuple)和列表(list)是 Python 中两种常用的序列类型,它们既有相似的核心功能,又在特性和适用场景上存在显著差异。元组的不可变性使其在创建时无需预留动态扩容的内存空间,因此内存占用更小,创建速度也比列表更快(尤其对于大量数据)。在访问元素时,两者效率相近,但当涉及迭代操作时,元组的迭代速度通常略快于列表,这是因为解释器对不可变对象的处理更高效。 

你可能感兴趣的:(python,开发语言,python基础,元组与列表)