FASTAI2列表扩展类L#4:常用list内置函数·上 (摘自《TOP极宽智能量化系列课件》)
TOP极宽智能量化系列课件《FASTAI2列表扩展类L#简介》当中,已经对列表扩展类L基本情况进行了介绍。 从中,大家已经知道,fastai的列表扩展类L,是基于Python语言list列表类的扩展,自然,列表扩展类L,也继承了list列表类的相关内置函数,本节,我们就此进行介绍。
更多资料请参见: 极宽量化公众号,免费订阅,欢迎大家关注。
| FASTAI智能量化论坛http://zwPython.com/forum.php?mod=forumdisplay&fid=65 【极宽QQ群】l 群号:1057170501 ,zwPython.com学习QQ群,面向py初学者和大众小白用户。l 群号:124134140,TOP极宽金融量化,三千人超大QQ群,面向专业金融实盘用户。l 群号:699266891,TFB极宽足球大数据QQ群 。l 群号:790548107,FASTAI智能量化。 |
列表List简介在进一步学习列表扩展类L以前,大家先回顾一下Python列表List的一些基础知识。 序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字: 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
Python编程语言当中最常见的序列是:列表List和元组Tuple。 序列可以进行的操作包括:index索引,slice切片,加,乘,检查成员。 此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。 列表List,是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。列表当中的数据项,可以是不同的数据类型。 创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。 如下所示: a=[1, 2, 3, 4, 5 ] b=["a", "b", "c", "d"] c=['btc','eth','ltc','xrp']
列表变量a、b、c对应的下标idx,和item项目数据var,如下图所示:
图 列表变量内部结构图
与字符串string的索引一样,list列表变量,idx索引从0开始。列表可以进行截取、组合等操作。
下面我们看看列表扩展类L,继承于list列表类的常用基础操作。
案例#4a,访问L对象内部数据列表扩展类L,类似numpy模块库的array,使用方括号的形式L[idx],通过idx下标索引来访问内部item项目数据。
案例文件名:fa2lsub004a.py,我们先看看案例,分组进行解说。 大家先看看第1组程序代码: print('\n----- #1') a= L(1,0,3,2,4,8,9,5,7,6) print('a:',a) # a2=a[2] print('a2:',a2) a3=a[3] print('a3:',a3) a9=a[-1] print('a9:',a9) 主要演示,L对象基本的idx下标操作,对应的输出信息是: ----- #1 a: (#10) [1,0,3,2,4,8,9,5,7,6] a2: 3 a3: 2 a9: 6
相关变量对应的内部数据结构图如下:
图 变量的内部数据结构图
上图:变量的内部数据结构图,左侧是变量名称,以及对应的简单数值,如果是复杂数据,如变量a,表示L对象。 右侧表格,表示变量a的内部数据,其中表头文字:list,表示L扩展列表对象。 右侧表格每个单元对应L对象的一个item子项目或者说对象obj,每个单元右下角的小数字,表示L列表对象下标idx,默认从0开始;每个单元的数值,表示对象保存的数据。
其中需要注意的是代码: a9=a[-1] idx下标取值为负数-1,表示最后一个数据,对应的数值是9: a9:6
以下是第2组示例代码: print('\n----- #2') a=L('btc','eth','ltc','xrp') print('a:',a) # a2=a[2] print('a2:',a2) a3=a[3] print('a3:',a3) a9=a[-1] print('a9:',a9) 对应的输出数据是: ----- #2 a: (#4) ['btc','eth','ltc','xrp'] a2: ltc a3: xrp a9: xrp 相关变量对应的内部数据结构图如下: 
(……) 更多资料请参见: 极宽量化公众号
|