您的位置:首页 > 编程语言 > Python开发

python 高级特性:slice(切片) 灵活指定范围

2018-07-16 11:33 555 查看
在python 官网的解释:

class
slice
(stop)

class
slice
(start, stop[, step])

Return a slice object representing the set of indices specified by range(start, stop, step). The start and step arguments default to None. Slice objects have read-only data attributes start, stop and step which merely return the argument values (or their default). They have no other explicit functionality; however they are used by Numerical Python and other third party extensions. Slice objects are also generated when extended indexing syntax is used. For example: a[start:stop:step] or a[start:stop, i]. See itertools.islice() for an alternate version that returns an iterator.

一、普通指定范围方法
#将数字填入L
L = []; #list
n = 1;
while n <= 99:
L.insert(0, n);
n = n + 1;
print L;

#take n in head
n = 10
for i in range(n):
print i, ":", L[i];



二、slice方式
L = []; #list
n = 1;
while n <= 99:
L.insert(0, n);
n = n + 1;

#slice
##follow way:
print "L[0:10]:", L[0:10]; #从第0位开始,第10位结束
print "L[:10]:", L[:10]; # = L[0:10]
print "L[::2]:", L[::2]; # = L[0:100:2] 逢2出1
print "L[-2:]", L[-2:]; # 从左往右,倒数第二位开始
print "L[-2:-1]", L[-2:-1]; # 从左往右,倒数第二位开始 ,倒数第一位结束
print "L[:-90]:", L[:-90];


print '';

string = 'abcdef'
print 'string:%s'%string;
print 'string[:3]:', string[:3];
print 'string[::2]:', string[::2];



可见,slice 比 循环还要简洁。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python 高级特性 slice