对这种经常取指定索引范围的操作,用循环十分繁琐,因此,Python提供了切片(Slice)操作符,能大大简化这种操作。
索引包括0,但是不包括3。索引如果是0,则可以省略。只用一个 : ,表示从头到尾
L = ['Adam', 'Lisa', 'Bart', 'Paul'] print L[0:3]切片操作还可以指定第三个参数:第三个参数表示每N个取一个,上面的 L[::2] 会每两个元素取出一个来,也就是隔一个取一个。
range(1, 101) [1, 2, 3, …, 100] 请利用切片,取出:
前10个数;3的倍数;不大于50的5的倍数。 L = range(1, 101) print L[:10] print L[2::3] print L[4:51:5]利用倒序切片对 1 - 100 的数列取出:
最后10个数;最后10个5的倍数。 L = range(1, 101) print L[-10:] print L[-46::5]‘abc’.upper() ‘ABC’
但它会把所有字母都变成大写。请设计一个函数,它接受一个字符串,然后返回一个仅首字母变成大写的字符串。
def firstCharUpper(s): return s[0].upper() + s[1:] print firstCharUpper('abc')