声明:在人工智能技术教学期间,不少学生向我提一些python相关的问题,所以为了让同学们掌握更多扩展知识更好地理解AI技术,我让助理负责分享这套python系列教程,希望能帮到大家!由于这套python教程不是由我所写,所以不如我的AI技术教学风趣幽默,学起来比较枯燥;但它的知识点还是讲到位的了,也值得阅读!PS:看不懂本篇文章的同学请先看前面的文章,循序渐进每天学一点就不会觉得难了!

由于列表都是序列,对于列表而言,索引和分片操作与字符串中的操作基本相同。

>>> L = ['spam','Spam','SPAM!']

>>> L[2] # Offsets start at zero

'SPAM!'

>>> L[-2] # Negative: count from the right

'Spam'

>>> L[1:] # Slicing fetches sections

['Spam','SPAM!']

由于可以在列表中嵌套列表(和其他对象类型),有时需要将几次索引操作连在一起使用来深入到数据结构中去。举个例子,最简单的办法之一是将其表示为矩阵(多维数组),在Python中相当于嵌套了子列表的列表。在这里我们看一个基于列表的3×3的二维数组:

>>> matrix = [[1,2,3],[4,5,6],[7,8,9]]

如果使用一次索引,会得到一整行(实际上,也就是嵌套的子列表),如果使用两次索引,你将会得到某一行里的其中一项:

>>> matrix[1]

[4,5,6]

>>> matrix[1][1]

5

>>> matrix[2][0]

7

>>> matrix = [[1,2,3],

... [4,5,6],

... [7,8,9]]

>>> matrix[1][1]

5