通过C学Python(3)列表的常用方法
查看一个对象的id:id(待查对象)
检查一个数据的数据类型:type(数据或变量)
查询一个序列对象的元素个数:len(序列对象)
查看一个类有哪些方法可用:dir(数据或变量或类)
查看一个类或函数的使用说明:help(待查数据)
L.append(obj)
在列表末尾添加新的对象。
入参:obj - 要添加到列表中的对象
返回:无
L.clear()
清空整个列表。
入参:无
返回:无
L.copy()
复制列表。
入参:无
返回:新列表,list型
注意:该拷贝为浅拷贝,新列表和原列表的id不同,但是其中元素的id相同,如果在新列表中添加元素,不会影响到原列表,但是如果对元素对象本身进行操作,则两个列表都会受影响。
L.count(obj)
统计某个元素在列表中出现的次数。
入参:obj - 要添加到列表中的对象
返回:次数,int型
L.extend(obj)
用可迭代的obj扩展原来的列表,将可迭代对象中所有元素依次添加到列表中。
入参:obj - 可迭代对象
返回:无
L.index(obj)
从列表中找某个值第一个匹配项的索引位置。
入参:obj - 待查元素
返回:索引位置,int型
L.insert(index,obj)
在指定位置插入元素,该位置的元素及其后元素全部向后移一个位置。
入参:index - 索引位置,int型
obj - 待插入元素
返回:无
L.pop(index)
返回列表中指定位置的元素,并且从列表中去除该元素
入参:index - 索引位置,int型,默认是-1
返回:索引位置的元素
L.remove(obj)
移除列表中第一个出现的指定元素。
入参:obj - 要移除的元素,注意不是索引
返回:无
L.reverse()
反向排列列表中元素。
入参:无
返回:无
L.sort(key, reverse)
对原列表进行排序。列表中的元素要类型相同
入参:key - 排序函数,默认值None,使用默认的从小到大的排序
reverse - 是否倒序(从大到小),bool型,默认值False
返回:无
排序函数的说明:
入参:list中的元素,依次填入,每次只填一个元素,所以函数必须允许只填入一个入参
返回:排序的依据,可以是数字、字符串等同类型的元素,sort会对这些新产生的元素进行再次排列,并将他们映射的原元素进行排列,如果返回多个值,则以第一个返回值为最优先,第二个为次优先,以此类推
举例:
li = [[1,2,3],[2,3,2],[4,5,6],[1,3,2],[2,3,3],[2,4,1]] def kk(x): return x[2] li.sort(key=kk) print(li)
[[2, 4, 1], [2, 3, 2], [1, 3, 2], [1, 2, 3], [2, 3, 3], [4, 5, 6]]
以列表中每个元素的第三个元素进行排列
def jj(x): return x[0],x[2] li.sort(key=jj) print(li)
[[1, 3, 2], [1, 2, 3], [2, 4, 1], [2, 3, 2], [2, 3, 3], [4, 5, 6]]
以列表中每个元素的第一个元素进行排列,如果元素值相同的,再以第三个元素进行二次排列