切片:取一个 list 或 tuple 的部分元素是非常常见的操作

>>> L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack']

#笨办法:之所以是笨办法是因为扩展一下,取前 N 个元素就没辙了。
>>> [L[0], L[1], L[2]]
['Michael', 'Sarah', 'Tracy'] #取前 N 个元素,也就是索引为 0-(N-1)的元素,可以用循环:
>>> r = []
>>> n = 3
>>> for i in range(n):
... r.append(L[i])
...
>>> r
['Michael', 'Sarah', 'Tracy']

对任何范围[start:end],我们可以访问到包括 start 在内到 end(不包括 end)的所有字符,换句话说,假设 x 是[start:end]中的一个索引值,那么有: start<= x < end

>>> aString = 'abcd'
>>> len(aString)
4

正向索引:索引值开始于 0,结束于总长度减 1(因为我们是从 0 开始索引的).

final_index = len(aString) - 1
= 4 - 1
= 3
>>> aString[0]
'a'
>>> aString[1:3]
'bc'
>>> aString[2:4]
'cd'
>>> aString[4]
Traceback (innermost last): File "<stdin>", line 1, in ?
IndexError: string index out of range

反向索引:在进行反向索引操作时,是从-1 开始,向字符串的开始方向计数,到字符串长度的负数为索引的结束,

final_index  = -len(aString)
= -4
>>> aString[-1]
'd'
>>> aString[-3:-1]
'bc'
>>> aString[-4]
'a'

  

默认索引:如果开始索引或者结束索引没有被指定,则分别以字符串的第一个和最后一个索引值为默认值。

 如果开始索引或者结束索引没有被指定,则分别以字符串的第一个和最后一个索引值为默认值。

>>> aString[2:]
'cd'
>>> aString[1:]
'bcd'
>>> aString[:-1]
'abc'
>>> aString[:]
'abcd'
#注意:起始/结束索引都没有指定的话会返回整个字符串.

  

最新文章

  1. ipython notebook 浏览器中编写数学公式和现实
  2. 让你的PHP程序真正的实现多线程(PHP多线程类)
  3. Binary Tree Inorder Traversal
  4. 汇编 int10h(转)
  5. AJAX案例二:简单表单验证
  6. SQL 性能调优日常积累【转】
  7. qunit.js初试
  8. Unity3D ShaderLab 语法:Properties
  9. 批处理测试局域网网络连通性ping1-255
  10. eclipse/MyEclipse 日期格式、注释日期格式、时区问题
  11. 用sql server的sql语句算一个empty GUID
  12. USACO1.3.4 Combination Lock
  13. 纯CSS小三角制作
  14. NOIP2008 立体图
  15. 6. svg学习笔记-路径
  16. POJ 3687 Labeling Balls (top 排序)
  17. Flask jinja2
  18. 一文理解 Java NIO 核心组件
  19. Python+Selenium笔记(十四)鼠标与键盘事件
  20. CSS------如何让大小不一样的div中心对齐

热门文章

  1. bat 截取字符串(for命令) 推荐收藏
  2. 使用IntelliJ IDEA 配置JDK(入门)
  3. JAVA中的语法
  4. bzoj 2097: [Usaco2010 Dec]Exercise 奶牛健美操【二分+树形dp】
  5. spring的annotation
  6. swoole之 swoole_process 应用于TP框架
  7. J - Ananagrams(map+vector)
  8. Java 8 (10) CompletableFuture:组合式异步编程
  9. Integer / BigInteger / BigDecimal 方法
  10. WordPress个性页面制作教程