Learning Python Part I 之 列表

特性

列表的几种特性:

  • 任意对象的有序集合体:
    从功能的角度来讲,列表就是一个容器,可以用来收集可以被当做一个群组的任意对象。并且列表中的对象保持从左到右的位置顺序,由此可见,列表也是序列。
  • 可以通过偏移量访问包含的对象:
    列表也是序列类型,可以适用序列类型的所有操作
  • 可变长度、异构性(heterogeneous)和任意嵌套

    可以增加和删除包含的对;可以包含任意类型的对象,不仅仅是字符串和数字,也可以包含字典、列表等。你可以创建一个列表,其中包含两层列表,即嵌套。

  • 属于可变类型、序列类型

  • 是一个包含对象引用的数组
    列表包含的是指向其他对象的引用的,就像C中的指针数组,在Python列表中定位一个元素和在C数组中的速度几乎一样快。事实上在Python解释器内部,列表就是数组,而不是链式结构。其实任何时候你将一个对象赋值给一个数据结构体或变量名,Python储存的都是指向这个对象的引用而不是复制这个对象。

方法

需要时可以通过help(list)dir(list)查看列表的所有方法和具体方法的使用方法。

这里写图片描述

举例

>>> a = [1, 4, 6, 7, 8, 3, 6, 7, 6] #创建列表
>>> a.append(4)#列表末尾插入元素
>>> a
[1, 4, 6, 7, 8, 3, 6, 7, 6, 4]
>>> a.insert(2,6)#列表特定位置插入元素
>>> a
[1, 4, 6, 6, 7, 8, 3, 6, 7, 6, 4]
>>> a.count(6)#列表中某个元素出现的次数
4
>>> a.remove(3)#删除特定位置的元素
>>> a
[1, 4, 6, 6, 7, 8, 6, 7, 6, 4]
>>> a.reverse()#反转列表
>>> a
[4, 6, 7, 6, 8, 7, 6, 6, 4, 1]
>>> b = [12, 11, 15, 19]
>>> a.extend(b)#将列表b添加到列表a末尾
>>> a
[4, 6, 7, 6, 8, 7, 6, 6, 4, 1, 12, 11, 15, 19]
>>> a.sort()#列表排序
>>> a
[1, 4, 4, 6, 6, 6, 6, 7, 7, 8, 11, 12, 15, 19]
>>> del a[3] #del关键字删除列表中特定位置的元素
>>> a
[1, 4, 4, 6, 6, 6, 7, 7, 8, 11, 12, 15, 19]
>>> 

列表排序

str.sort()

>>> L = ['abc', 'ABD', 'aBe']
>>> L.sort()
>>> L
['ABD', 'aBe', 'abc']
>>> L = ['abc', 'ABD', 'aBe']
>>> L.sort(key=str.lower)
>>> L
['abc', 'ABD', 'aBe']
>>>
>>> L = ['abc', 'ABD', 'aBe']
>>> L.sort(key=str.lower, reverse=True)
>>> L
['aBe', 'ABD', 'abc']

sorted()

>>> L = ['abc', 'ABD', 'aBe']
>>> sorted(L, key=str.lower, reverse=True)
['aBe', 'ABD', 'abc'] # Sorting built-in
>>> L = ['abc', 'ABD', 'aBe']
>>> sorted([x.lower() for x in L], reverse=True)
['abe', 'abd', 'abc']
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章