用钢铁意志,成就不平凡人生。
上期我们学习了列表(13条消息) Python自学笔记七:for循环和缩进错误_ironmao的博客-CSDN博客
在 Python 中,切片操作用于从一个序列(如列表或元组)中获取一个子序列。其语法形式为:
sequence[start:end:step]
其中,`sequence`表示要进行切片的序列对象,`start`表示起始位置(包含),`end`表示结束位置(不包含),`step`表示步长。
下面是一些使用切片操作的示例:
my_list = [1, 2, 3, 4, 5]
sub_list = my_list[1:3] # 获取下标1到下标2之间的元素
print(sub_list) # 输出 [2, 3]
my_tuple = (1, 2, 3, 4, 5)
sub_tuple = my_tuple[::2] # 获取所有偶数下标位置的元素
print(sub_tuple) # 输出 (1, 3, 5)
复制一个列表或者元组可以使用切片操作,这样得到的是一个新的对象。例如:
my_list = [1, 2, 3]
new_list = my_list[:] # 复制一个新的列表
new_list.append(4)
print(new_list) # 输出 [1, 2, 3, 4]
print(my_list) # 输出 [1, 2, 3]
需要注意的是,如果直接使用赋值语句将一个列表或元组赋值给另一个变量,那么这两个变量将引用同一个对象,修改其中一个变量的值会影响到另一个变量。例如:
my_list = [1, 2, 3]
new_list = my_list # 直接赋值,两个变量引用同一个对象
new_list.append(4)
print(my_list) # 输出 [1, 2, 3, 4]
在 Python 中,元组(tuple)是一个有序的不可变序列。与列表相比,元组更加轻量级,因为它不支持修改和删除操作,这也使得元组可以被当作一个不可变的常量对象来使用。元组通常用于存储一些不会被修改的数据,例如程序的常量、坐标等。
元组的语法形式为:
my_tuple = (item1, item2, item3, ...)
其中,item1、item2、item3等表示元组中包含的元素。需要注意的是,如果元组只包含一个元素,则需要在元素后面添加一个逗号,否则它会被解释为一个普通的表达式。
下面是一些创建和访问元组的示例:
# 创建元组
my_tuple = (1, 2, 3, 4, 5)
empty_tuple = ()
# 访问元组中的元素
print(my_tuple[0]) # 输出 1
print(my_tuple[-1]) # 输出 5
# 元组切片
sub_tuple = my_tuple[1:3]
print(sub_tuple) # 输出 (2, 3)
# 元组长度
print(len(my_tuple)) # 输出 5
# 元组中是否包含某个元素
print(3 in my_tuple) # 输出 True
print(6 in my_tuple) # 输出 False
需要注意的是,由于元组是不可变序列,因此不能对元组进行修改、删除和添加等操作。如果需要对序列进行修改,应该使用列表(list)来代替元组。