一篇代码搞懂Python列表的索引[:-1] [1:] [1:-1] [2:-2] [1:-3] [:-3] [:-2] [1:] [2:] [::-1] [::-2] [::-3] [2::-1] [3::-1]
layer_list = [2, 64, 128, 64, 8]
# layer_list[:-1] [2, 64, 128, 64]
# layer_list[1:] [64, 128, 64, 8]
for in_dim, out_dim in zip(layer_list[:-1], layer_list[1:]):
print(in_dim)
print(out_dim)
print("-------------")
"""
2
64
-------------
64
128
-------------
128
64
-------------
64
8
-------------
"""
for aaa in zip(layer_list[:-1], layer_list[1:]):
print(aaa)
print("-------------")
"""
(2, 64)
-------------
(64, 128)
-------------
(128, 64)
-------------
(64, 8)
-------------
"""
print(layer_list[:-1])
print(layer_list[1:])
print(layer_list[1:-1])
print(layer_list[2:-2])
print(layer_list[1:-3])
print(layer_list[:-3])
print(layer_list[:-2])
print(layer_list[1:])
print(layer_list[2:])
print(layer_list[::-1])
print(layer_list[::-2])
print(layer_list[::-3])
print(layer_list[2::-1])
print(layer_list[3::-1])
# -1:从后往前数的话,最后一个位置为-1 倒数第二个位置为-2 倒数第三个位置为-3
# [:-1] #从位置0到位置-1之前的数(不包括-1) [2, 64, 128, 64] 倒数第一个数子为-1
# [1:] #从位置1到最后的数 [64, 128, 64, 8]
# [1:-1] #从位置1到位置-1之前的数(不包括-1) [64, 128, 64]
# [2:-2] #从位置2到位置-2之前的数(不包括-2) [128]
# [1:-3] #从位置1到位置-3之前的数(不包括-3) [64]
# [:-3] #从位置0到位置-3之前的数(不包括-3) [2, 64]
# [:-2] #从位置0到位置-2之前的数(不包括-2) [2, 64, 128]
# [1:] #从位置1(包括位置1)到最后一个的数字 [64, 128, 64, 8]
# [2:] #从位置2(包括位置2)到最后一个的数字 [128, 64, 8]
# [::-1] #位置倒排 [8, 64, 128, 64, 2]
# [::-2 ] #中间隔一个数位置倒排, [8, 128, 2]
# [::-3] #中间隔两个数位置倒排, [8, 64]
# [2::-1] # 从下标为2的元素翻转读取 [128, 64, 2]
# [3::-1] # 从下标为3的元素翻转读取 [64, 128, 64, 2]