针对《深度学习入门》一书中的第一章,这期内容主要介绍Python的基础知识,并使用简单的方法搭建Python的运行环境,让代码能够跑起来。
由于笔者是C系程序员出身,所以对Python的一些基本使用方法掌握的还不是十分熟练。在本期节目的制作过程中,发现了书中提供了一种比较巧妙方法,能够比较轻松的理解Python列表的切片(slicing)标记法,即在列表名后的"[]“内,使用”:"来访问子列表。
- ":"前的数字(start)是要获取元素索引的起始位置(包括该索引(start)对应的元素)
- ":"后的数字(end)是要获取元素索引的结束位置(不包括该索引(end)对应的元素)
- 当索引为负数(-n, n>0)时,对应于列表的倒数第n个元素
- ":"前为空,表示从列表表头的元素开始获取
- ":"后为空,表示获取到列表表尾的元素
举例:
>>> a = [1, 2, 3, 4, 5] # 定义列表a
>>> # start = 0, end = 3
... # 获取a[start]至a[end],包括a[start],不包括a[end]
... a[0:3]
[1, 2, 3]
>>> # start = 2, end = 4
... # 获取a[start]至a[end],包括a[start],不包括a[end]
... a[2:4]
[3, 4]
>>> # start = 1, end = -2
... # end = -2 表示倒数第2个元素
... # 获取a[start]至a[end],包括a[start],不包括a[end]
... a[1:-2]
[2, 3]
>>> # start = -5, end = 2
... # start = -5 表示倒数第5个元素
... # 获取a[start]至a[end],包括a[start],不包括a[end]
... a[-5:2]
[1, 2]
>>> # start = -2, end = -1
... # start = -2 表示倒数第2个元素, end = -1 表示倒数第1个元素
... # 获取a[start]至a[end],包括a[start],不包括a[end]
... a[-2:-1]
[4]
>>> # start = -2, end = 1
... # start = -2 表示倒数第2个元素
... # 获取a[start]至a[end],包括a[start],不包括a[end]
... # start的位置在end位置的右侧,因此输出为空
... a[-2:1]
[]
>>> # ":"前为空,表示从列表表头的元素开始获取,end = 2,不包括a[end]
... a[:2]
[1, 2]
>>> # ":"后为空,表示获取到列表表尾的元素,start = 3, 包括a[start]
... a[3:]
[4, 5]
>>> # ":"前后都为空,表示获取到列表所有元素
... a[:]
[1, 2, 3, 4, 5]
>>>
更多内容请参见第2期视频:
《深度学习入门》第2期-Python入门-码农解书
欢迎大家留言关注,多提意见,谢谢!