Python list various slicing poses

Cut along, cut back, cut whatever you want, but don't be fooled.

mylist = [1,2,3,4,5,6,7,8,9]
print(mylist[2:7:2]) # [3, 5, 7]
print(mylist[:7:2]) # [1, 3, 5, 7]
print(mylist[2::2]) # [3, 5, 7, 9]
print(mylist[2:9:2]) # [3, 5, 7, 9]
print(mylist[2:10:2]) # [3, 5, 7, 9]
print(mylist[::2]) # [1, 3, 5, 7, 9]
print(mylist[7:2:2]) # []
print(mylist[2:7:-2]) # []
print(mylist[7:2:-2]) # [8, 6, 4]
print('============')
print(mylist[-2:-7:-2]) # [8, 6, 4]
print(mylist[:-7:-2]) # [9, 7, 5]
print(mylist[-2::-2]) # [8, 6, 4, 2]
print(mylist[-2:-10:-2]) # [8, 6, 4, 2]
print(mylist[::-2]) # [9, 7, 5, 3, 1]
print(mylist[-7:-2:-2]) # []
print(mylist[-2:-7:2]) # []
print(mylist[-7:-2:2]) # [3, 5, 7]

If the step size is an integer, the start must be smaller than the end, otherwise the result must be empty
. If the step size is negative, the start must be greater than the end, otherwise the result must be empty

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
# 反转
print(mylist[::-1]) # [9, 8, 7, 6, 5, 4, 3, 2, 1]
mylist.reverse()
print(mylist) # [9, 8, 7, 6, 5, 4, 3, 2, 1]

Close left and open right

print([1,2,3,4,5,6,7,8,9][1:3:])  # [2, 3]
print([1,2,3,4,5,6,7,8,9][-1:-7:-1])  # [9, 8, 7, 6, 5, 4]

Guess you like

Origin blog.csdn.net/qdPython/article/details/112671036