Python高级特性-切片(Slice)
来源:互联网 发布:.cn域名和.com那个好 编辑:程序博客网 时间:2024/06/06 03:16
切片(Slice)
如何在一个数组中取特定的一组数据?
是一个个指定?
>>> L = range(10)>>> L[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]>>> L[0]0>>> L[1],L[2],L[3](1, 2, 3)>>>
数据少还行,要是数据多呢?循环怎么样?
>>> L = range(10)>>> L[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]>>> for i in range(3):... print L[i]... 012>>>
这个循环是单个输出,要是需要输出数组还要做一下修改
>>> L = range(10)>>> L[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]>>> r = []>>> for i in range(3):... r.append(L[i]) #add L[i] for list r in the end ... >>> r[0, 1, 2]>>>
如果不需要连续取数,而是要间隔取数呢?有点要疯的感觉吧?是不是感觉很麻烦?Python提倡的”优雅”,”简洁”的特性何在?Python不能忍啊所以提出了切片
这种神奇的东东. 还是用上面的例子:
>>> L[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]>>> L[0:5] #[0, 1, 2, 3, 4]>>> L[:5] #若是从list的头部开始索引,0可以省略.[0, 1, 2, 3, 4]>>> L[1:5][1, 2, 3, 4]
通过使用一个简单的冒号:
就能优雅的输出数组了,还要什么循环!Python你的节操掉了!根据数组的特性我们还可以倒着输出.
>>> L[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]>>> L[-5:][5, 6, 7, 8, 9]>>> L[-5:-1] #倒数第一个元素的索引是`-1`[5, 6, 7, 8]
这里有个地方要注意比如某一个切片是这样的L[x:y]
其中必须x
>>> L = range(10)>>> L[5:4][]
我还会大跳!
前十个数,每两个取一个:
>>> L[:10:2][0, 2, 4, 6, 8]
100个数组中,没5个取一个:
>>> L=range(100)>>> L[::5] #L[:]是全部显示的意思.[0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95]
tuple,str,Unicode也是可以的
tuple也是一种list,不过tuple是不可变的,所以tuple也可以使用切片,不过输出的还是tuple罢了.
>>> L=(1,2,3,4)>>> L[:2](1, 2)
同样stringxxx
或Unicodeu'xxx'
也是一种list,所以也可以使用切片.
>>> L='abcde'>>> L[:2]'ab'>>> L='我来了'>>> L[:2]'\xe6\x88' >>> L=u'我来了'>>> L[:2]u'\u6211\u6765'>>>
0 0
- Python高级特性-切片(Slice)
- Python高级特性-切片(Slice)
- 【Python】高级特性之切片(slice)
- 转载:Python高级特性 切片(Slice)
- Python基础-高级特性-切片(Slice)
- Python 高级特性 : 切片
- python高级特性 - 切片
- Python高级特性之切片
- 【Python学习笔记】python高级特性:切片
- python 切片(slice)
- Python 切片(slice)
- Python 切片(Slice)
- Python——高级特性 切片
- python高级特性(1):切片
- 详解Python的切片(Slice)
- python: 切片符号(slice notation)
- python之列表切片(slice)
- python学习笔记(5)-高级特性(一)-切片
- Hadoop优化
- ViewPager实现动画从入门到精通(二)---JazzyViewPager使用
- iOSAPP 增加后台处理机制送审注意问题
- 基数排序_RADIXSORT
- position:fixed导致当前div的宽度与父块不一致
- Python高级特性-切片(Slice)
- 隐藏navbar的灰线
- Windows下配置Tomcat服务器
- 四月总结----杂
- QT中文乱码
- Source Insight下载及注册码
- 进程状态
- android4.4 Launcher3 修改配置文件default_workspace.xml无效的解决方法
- java垃圾回收机制详解