python之高级特性-切片

一、切片

  在元组和列表里面,常见的切片方式。

L = ['Miahel','Saral','Bob','Jack','Tracy']
[L[0],L[1],L[2]] #直接取前三个元素,最笨办法
['Miahel', 'Saral', 'Bob']

  采用循环方式,挨着取元素

r = []
n = 3
for i in range(n):
    r.append(L[i])
r
['Miahel', 'Saral', 'Bob']

  采用切片法,快速简便获取方法,切片索引时,不包括最右边的元素。比如(L[0:3],从0开始一次索引,到2截至,不包括3)

L[0:3]
['Miahel', 'Saral', 'Bob']
L[1:3]
['Saral', 'Bob']

   切片法同样也支持倒数切片,取倒数第一个数,倒数第二个数,倒数第一和第二个数

L[-1]
'Tracy'

L[-2]
'Jack'

L[-2:]
['Jack', 'Tracy']

  更多的切片操作

l = list(range(1,100,5))
l
[1, 6, 11, 16, 21, 26, 31, 36, 41, 46, 51, 56, 61, 66, 71, 76, 81, 86, 91, 96]

l[:10]
[1, 6, 11, 16, 21, 26, 31, 36, 41, 46]

l[10:20]
[51, 56, 61, 66, 71, 76, 81, 86, 91, 96]

l[:10:2]
[1, 11, 21, 31, 41]

l[::5]
[1, 26, 51, 76]

二、tuple操作

  tuple也是一种list,唯一区别是tuple不可变。因此,tuple也可以用切片操作,只是操作的结果仍是tuple。同样的对字符串一样的可以执行切片操作。

x = (1,23,4,5,6)
x[:2]
(1, 23)

s = 'ASGSHBKJA'
s[:3]
'ASG'

 

posted @ 2020-10-17 14:10  上虞牧之  阅读(66)  评论(0)    收藏  举报