Python列表切片
alist = [1, 3, 4, 5, 2]
print(alist[0]) # 输出左边第0个位置的元素:1
print(alist[3]) # 输出左边第3个位置的元素
print((alist[-1])) # 输出最右边的元素
print(alist[2], alist[-2])
alist[0] = 99 # 修改列表元素的值
print(alist[0])
print(alist)
print(len(alist))
1
5
2
4 5
99
[99, 3, 4, 5, 2]
5
len()是Python的内置函数,用于获得序列中元素的个数。
切片是为了获得序列某个区间的元素序列。切片操作通过使用两个冒号分隔3个数字来实现,
lie = [3, 4, 6, 7, 2, 10, 16]
print(lie[:]) # 取全部元素
print(lie[0:]) # 取全部元素
print(lie[:-1]) # 取 除最后一个元素外的所有元素
print(lie[2:5]) # 取序号为2、3、4的元素,不包含最后一个序号的元素
print(lie[::2]) # 从0开始隔一个取一个元素
print(lie[1:5:2]) # 从1开始,每隔一个取一个元素,直到5为止
print(lie[::-1]) # 从右向左取全部成员
print(lie[5:0:-2]) # 从右向左隔一个取一个元素,不包含0
[3, 4, 6, 7, 2, 10, 16]
[3, 4, 6, 7, 2, 10, 16]
[3, 4, 6, 7, 2, 10]
[6, 7, 2]
[3, 6, 2, 16]
[4, 7]
[16, 10, 2, 7, 6, 4, 3]
[10, 7, 4]
切片可用于获得子列表,或者修改、删除列表元素。
alist = [3, 4, 6, 7, 2, 10, 16, -8]
alist_x = alist[1:6:2]
print(alist_x)
# 输出结果:[4, 7, 10]
alist[1:6:2] = [28, 38, 48] # 修改元素值
print(alist)
# 输出结果:[3, 28, 6, 38, 2, 48, 16, -8]
del alist[3:5] # 删除元素,删除第3、4元素,不包括第5元素
print(alist)
# 输出结果:[3, 28, 6, 48, 16, -8]
str = 'Python'
print(str[0])
# 输出结果:P
print(str[-1])
# 输出结果:n
print(str[1:5:2])
# 输出结果:yn
str[0] = 'y'
print(str)
# 输出结果报错
这里抛出异常,因为字符串是不可变序列,即不能修改其值,这里要修改就会出现错误。