什么是列表list

有序数据项的集合,用逗号间隔

    -用 [ ]方括号括起来

    -数据项可以是同类型数据(类型有:×××、浮点型、字符串)

    -数据项也可以是不同类型数据

    -list里面还可以有list作为其数据项(列表嵌套)

eg1:

Li1=[1,2,3,4,5]

type(Li1)

len(Li1)----> 5 查看列表的长度

Li2=[1,'abv','c',12.897,[1,2,3,4]]

print Li2

len(Li2)----> 5 列表的下标索引分别为[0],[1],[2],[3],[4]

定义空列表

Li3=[]

访问列表中的元素 list_name[index] #index从0开始

修改列表中的元素

Li2[1]='abc'   ---ok

Li2[1]=Li2[1].replace('v','c') ---ok

Li2[1]=Li2[1].replace('v',Li2[2]) ---ok

注意:list不是数组

1,list数据类型的基本特点

1)可修改,list数据结构内容可以被程序修改

2)可动态增减(+、*),长度不固定

3)list里的数据项可以是不同类型数据,甚至可以是list作为数据及list嵌套

4)两个list可“连接”(通过 + 号连接)构成更大的list

2,python的list和数组的区别

1)数组一般是固定长度的

2)数组通常是在 { } 之间,list数据类型是在 [ ] 之间

3)数组的各个数据项数据类型必须相同

4)两个数组不可直接“连接”构成更大的数组

字典、元组不可以被修改。

访问列表的方式有:

    1.for循环迭代;

    2.index索引(索引范围 0 - 长度-1 );

    3.切片 stat_index:stop_index+1

Li3=Li2[1:3]

print Li3

切片:list_obj[start:end:step]

len(Li2)----> 5

Li3=Li2[:4]  从头开始切                    step>0 方向:->

Li3=Li2[3:]  切到最后                      step>0 方向:->

Li3=Li2[:]   从起点切到终点(相当于没切)  step>0 方向:->

Li3=Li2[4:1:-1]                            step<0 方向:<-

Li3=Li2[4:1:-2]                            step<0 方向:<-

列表的迭代:

for v in Li2:

    print v    #一直调用iter(Li2).next

迭代对象可以是列表\string\文件\元组

d=(1,3,'d',19.98)

for i in d:

    print i