二. 列表可以包含任意对象
列表可以包含任何种类的对象。列表的元素都可以是相同的类型:
>>> a = [2, 4, 6, 8]
>>> a
[2, 4, 6, 8]
或者元素可以是不同类型的:
>>> a = [21.42, 'foobar', 3, 4, 'bark', False, 3.14159]
>>> a
[21.42, 'foobar', 3, 4, 'bark', False, 3.14159]
列表对象不必是唯一的。给定对象可以多次出现在列表中:
>>> a = ['bark', 'meow', 'woof', 'bark', 'cheep', 'bark']
>>> a
['bark', 'meow', 'woof', 'bark', 'cheep', 'bark']
可以使用方括号中的索引访问列表中的各个元素。这与访问字符串中的单个字符完全相似。列表索引从零开始,与字符串一样。
请考虑以下列表:
>>> a = [ 'foo' , 'bar' , 'baz' , 'qux' , 'quux' , 'corge' ]
元素的索引a
如下所示:
列表指数
以下是访问以下元素的Python代码a
:
>>>>>> a [ 0 ] 'foo' >>> a [ 2 ] 'baz' >>> a [ 5 ] 'corge'
实际上,关于字符串索引的所有内容对列表都是类似的。例如,负列表索引从列表末尾开始计算:
负面清单索引
>>>>>> a [ - 1 ] 'corge' >>> a [ - 2 ] 'quux' >>> a [ - 5 ] 'bar'
切片也有效。如果a
是列表,则表达式a[m:n]
返回a
index中的部分m
,但不包括index n
:
>>>>>> a = [ 'foo' , 'bar' , 'baz' , 'qux' , 'quux' , 'corge' ] >>> a [ 2 :5 ] ['baz','qux','quux']
您已经看到列表中的元素可以是任何类型的对象。这包括另一个清单。列表可以包含子列表,而子列表又可以包含子列表,依此类推任意深度。
考虑这个(公认的人为)例子:
>>> x = [ 'a' , [ 'bb' , [ 'ccc' , 'ddd' ], 'ee' , 'ff' ], 'g' , [ 'hh' , 'ii' ], 'j ' ]
>>> x
['a',['bb',['ccc','ddd'],'ee','ff'],'g',['hh','ii'],' J']
x
引用的对象结构如下图所示:
嵌套列表
x[0]
,, x[2]
和x[4]
是字符串,每个字符长:
嵌套列表
三个资料Q群下载不了也转发不了,先放这里Fine_tuning.zipLangChain.zipdata_clear.rar