5.1 python中的序列通用操作
Python中的序列(如列表、元组和字符串)支持一系列通用的操作,这些操作允许你以相同或类似的方式处理不同类型的序列数据。以下是Python中序列的一些通用操作:
1. 索引(Indexing)
索引允许你访问序列中的特定元素。索引是从0开始的,即序列的第一个元素的索引是0,第二个元素的索引是1,依此类推。
my_list = [10, 20, 30, 40, 50]
print(my_list[0]) # 输出: 10
print(my_list[4]) # 输出: 50
2. 切片(Slicing)
切片操作允许你获取序列的一个子集。切片通过指定起始索引、结束索引(可选)和步长(可选)来工作。
my_list = [10, 20, 30, 40, 50]
print(my_list[1:4]) # 输出: [20, 30, 40]
print(my_list[::2]) # 输出: [10, 30, 50] # 使用步长2
3. 加法(Concatenation)
加法操作允许你将两个序列合并成一个新的序列。需要注意的是,元组是不可变的,因此它们不支持加法操作(在技术上,你可以使用+
运算符来创建一个包含两个元组元素的新元组,但这会创建一个新的元组,而不是修改原始元组)。
list1 = [1, 2, 3]
list2 = [4, 5, 6]
print(list1 + list2) # 输出: [1, 2, 3, 4, 5, 6]
# 字符串也支持加法
str1 = "Hello, "
str2 = "World!"
print(str1 + str2) # 输出: Hello, World!
4. 乘法(Repetition)
乘法操作允许你将序列与整数n相乘,结果是该序列重复n次的新序列。
my_list = [1, 2, 3]
print(my_list * 3) # 输出: [1, 2, 3, 1, 2, 3, 1, 2, 3]
# 字符串也支持乘法
my_str = "abc"
print(my_str * 3) # 输出: abcabcabc
5. 成员检查(Membership)
使用in
关键字可以检查序列中是否包含某个元素。
my_list = [1, 2, 3, 4, 5]
print(3 in my_list) # 输出: True
print(6 in my_list) # 输出: False
6. 长度(Length)
使用len()
函数可以获取序列中元素的数量。
my_list = [1, 2, 3, 4, 5]
print(len(my_list)) # 输出: 5
my_str = "Hello"
print(len(my_str)) # 输出: 5
7. 遍历(Iteration)
使用for
循环可以遍历序列中的每个元素。
my_list = [1, 2, 3, 4, 5]
for item in my_list:
print(item)
# 输出:
# 1
# 2
# 3
# 4
# 5
8. 序列解包(Unpacking)
在Python中,你还可以将序列解包到多个变量中。
data = [1, 2, 3]
a, b, c = data
print(a, b, c) # 输出: 1 2 3
# 字符串也可以解包,但通常用于字符
s = "abc"
x, y, z = s
print(x, y, z) # 输出: a b c
这些通用操作使得Python的序列类型非常灵活和强大,允许你以相同的方式处理不同类型的序列数据。