前言
列表:在Python中,列表(List)是一种有序、可变、可以包含任意类型元素的数据结构。列表使用方括号 [ ]
来表示,元素之间用逗号 ,
分隔。
元组:在Python中,元组(Tuple)是一种有序、不可变的数据结构,使用圆括号 ()
来表示,元素之间用逗号 ,
分隔。与列表不同,元组一旦创建,就不能修改其内容。
一、List(列表)
List (列表)是Python的一种内置数据类型。他是有序的集合,可以随时对列表进行增删改查等操作。
1、创建列表
列表的定义通常 变量名 = ["元素1","元素2"]使用方括号[ ]来表示:
如name = ["张三","李四","王五"],此外列表还可以进行嵌套如:name = ["张三","李四","王五",["鬼脚七","椒麻鸡"],[1,2,3,4,5,6]]
下面是一个简单的示例,展示如何定义一个列表:
# 定义一个包含整数的列表
my_list = [1, 2, 3, 4, 5]
# 定义一个包含字符串的列表
fruits = ["apple", "banana", "orange", "grape"]
# 定义一个混合类型的列表
mixed_list = [1, "apple", True, 3.14]
# 定义一个空列表
empty_list = []
#定义一个多重列表
name = ["张三","李四","王五",["鬼脚七","椒麻鸡"],[1,2,3,4,5,6]]
2、列表的遍历方法:
在Python中可以使用常规遍历方法for 或 while循环来遍历列表中的所有元素。如:
fruits = ["apple", "banana", "orange", "grape"]
for fruit in fruits:
print(fruit)#输出表中元素
#或者使用while遍历
fruits = ["apple", "banana", "orange", "grape"]
index = 0
while index < len(fruits):
print(fruits[index])
index += 1
这里介绍两种种不常用遍历列表元素的方法。
1、 使用Python内置函数enumerate 遍历:使用内置函数 enumerate 可以同时获取元素和索引,这在某些情况下非常有用。
fruits = ["apple", "banana", "orange", "grape"]
for index, fruit in enumerate(fruits):
print(f"Index {index}: {fruit}")#打印索引,和所对应的元素
2、使用列表推导式遍历:遍历生成一个新的列表。
numbers = [1, 2, 3, 4, 5]
squared_numbers = [x**2 for x in numbers]
print(squared_numbers) # 输出:[1, 4, 9, 16, 25]
3、列表的切片操作
列表的切片操作是指从一个列表中获取指定范围内的子列表。在 Python 中,你可以使用下标来执行切片操作,语法如下:
new_list = old_list[start:end:step]
下面是一些示例:
my_list = [1, 2, 3, 4, 5]
# 获取索引1到3(不包括3)的子列表
sublist1 = my_list[1:3]
print(sublist1) # 输出: [2, 3]
# 获取从索引2开始到末尾的子列表
sublist2 = my_list[2:]
print(sublist2) # 输出: [3, 4, 5]
# 使用步长获取奇数位置的元素
odd_indices = my_list[::2]
print(odd_indices) # 输出: [1, 3, 5]
4、列表的其他操作
append():该方法用于在列表末尾添加一个元素。
extend():将另一个列表中的元素逐一添加到当前列表的末尾。
insert():在指定位置插入一个元素。
pop():移除并返回指定位置的元素,默认为最后一个元素。
del:删除列表中的元素或整个列表。
remove():删除列表中第一个匹配的指定值。
clear():清空列表中的所有元素。
reverse():将列表中的元素顺序颠倒。
sort():对列表中的元素进行排序。
一、tuple(元组)
元组(Tuple)是 Python 中的一种数据结构,类似于列表,但与列表不同的是,元组是不可变的(immutable)。
1、创建元组
在 Python 中,你可以使用逗号分隔值来创建一个元组,并且可以选择是否使用圆括号,元组也可以直接使用 +
运算符将两个元组连接起来。。
下面是一个简单的示例,展示如何定义一个元组:
# 使用逗号创建元组
my_tuple = 1, 2, 3
print(my_tuple) # 输出: (1, 2, 3)
# 使用圆括号创建元组
another_tuple = (4, 5, 6)
print(another_tuple) # 输出: (4, 5, 6)
# 创建单个元素的元组时,需要在元素后面加上逗号
single_element_tuple = (7,)
print(single_element_tuple) # 输出: (7,)
2、元组的遍历方法:
在Python中可以使用常规遍历方法for遍历元组。如:
my_tuple = (1, 2, 3, 4, 5)
for item in my_tuple:
print(item)
这里介绍两种种不常用遍历列表元素的方法。
1、 使用Python内置函数enumerate 遍历:使用内置函数 enumerate 可以同时获取元素和索引,这在某些情况下非常有用。
my_tuple = (1, 2, 3, 4, 5)
for index, value in enumerate(my_tuple):
print(f"Index: {index}, Value: {value}")
2、使用索引和 range() 函数遍历元组。
my_tuple = (1, 2, 3, 4, 5)
for i in range(len(my_tuple)):
print(my_tuple[i])
3、元组的切片操作
元组切片是一种从元组中获取子集的方法,类似于列表切片。你可以使用切片操作来获取元组中的一部分元素。语法如下:
tuple[start:end:step]
下面是一些示例:
my_tuple = (1, 2, 3, 4, 5)
# 获取索引为1到索引为3的元素(不包括索引为3的元素)
slice_tuple = my_tuple[1:3]
print(slice_tuple) # 输出: (2, 3)
# 获取从索引为2到末尾的所有元素
slice_tuple = my_tuple[2:]
print(slice_tuple) # 输出: (3, 4, 5)
# 获取从开始到索引为3的所有元素
slice_tuple = my_tuple[:3]
print(slice_tuple) # 输出: (1, 2, 3)
# 使用负数索引
slice_tuple = my_tuple[:-1] # 从开始到倒数第二个元素
print(slice_tuple) # 输出: (1, 2, 3, 4)
# 使用步长
slice_tuple = my_tuple[::2] # 每隔一个元素取一个
print(slice_tuple) # 输出: (1, 3, 5)
# 反向切片
reverse_tuple = my_tuple[::-1] # 逆序获取元素
print(reverse_tuple) # 输出: (5, 4, 3, 2, 1)