0%

第三章列表

列表和元组属于序列
字典属于映射
上面2者为容器
集合set不属于序列和映射


n1=[1,2,3]
n2=n1 则n2和n1是一个列表
若改变n2。则n1也改变


number=[0,1,2,3,4,5,6]
number[2:6]
其中2包含,6不包含
即输出2,3,4,5

num[起始点:终止点:步长]
若步长为正数,则终止点必须大于起始点,若终止点为空,则默认为最大。若起始点为空,则默认为最小
若步长为负数,则终止点必须小于起始点,若终止点为空,则默认为最小,若起始点为空,则默认为最大


序列可以相加[1,2]+[3,4]=[1,2,3,4]
也可以与常数相乘,即重复n次

[None]*10 则可以创建10个大小的空列表


元素 in 列表(or 字符串) 可以检测元素是否在列表中

min(列表)求最小值
max()求最大值
len()求元素个数


list(字符串) 则可以把字符串的每个字符变成列表的元素

del num[1] 则删除

name=list(‘per’)
name[1:]=list(‘python’)
分片赋值,且终点为空,则可以变相增长列表,也可以变相缩短,总是就是1后面就赋值成这几个元素
name=[p,y,t,h,o,n]
name1=name[:] 则赋值整个列表
name[1:1]=[1,2,3]则可以实现在1处插入

num[1:4]=[] 则删除3个元素!


对象方法:
调用方式:
有个列表对象lister
则有lister.方法()

lister append(元素) 在列表末尾增加元素,如果元素是个列表,则该列表也变成一个元素
a=[0]
a.append([1,2,3])=[0,[1,2,3]]
注意一点:
当在某函数中
执行a.append(b),b是一个该函数中创建的列表
当退出函数时,b被清楚,但是!传入a的是指向b的别名!!!故变为空!记住,传入的是别名!
正确方法应该是a.ppend(b[:])

lister.count(元素) 如果列表长度为n,则检测在这n个元素中,该元素出现了几次

lister.extend(列表) 在列表的末尾连接上这个列表。

lister.index(元素) 找到列表中该元素第一次出现的位置,如果找不到则报错

lister.insert(位置,元素) 在列表的某位置插入元素

lister.pop() 去除最后一个元素并返回

lister.pop(位置) 去除这个位置的元素

lister.remove(匹配元素) 移除第一个匹配元素

lister.reverse() 将列表中的元素反向存放

lister.sort() 改变列表的元素的排列顺序

非对象方法的排序方式:
sorted(字符串) 则返回一个排序的字符列表
sorted(列表) 返回排序列表