列表

作者: 举个简单的栗子 | 来源:发表于2019-04-29 21:40 被阅读0次

列表

列表概念

列表是由一系列特定顺序排列的元素组成的序列。

In [18]: a = [1,2,3,4,5,6]

In [19]: a
Out[19]: [1, 2, 3, 4, 5, 6]

创建列表的方式,可以使用 list()和 [] 生成

In [7]: empty_list = list()

In [8]: empty_list
Out[8]: []
In [11]: empty_list = []

In [12]: empty_list
Out[12]: []

列表操作

加法和乘法

In [13]: a = [1,2,3]

In [14]: a + [4,5,6]
Out[14]: [1, 2, 3, 4, 5, 6]
In [16]: a = [1,2,3]

In [17]: a * 3
Out[17]: [1, 2, 3, 1, 2, 3, 1, 2, 3]

索引和切片

index()方法返回元素所在的索引位置

In [20]: a = [1,2,3,4,5,6]

In [21]: a.index(4)
Out[21]: 3

返回前2个元素,不包含后以一个索引元素

In [22]: a = [1,2,3,4,5,6]

In [23]: a[0:2]
Out[23]: [1, 2]

两种效果是相同的

In [24]: a = [1,2,3,4,5,6]  

In [25]: a[:2]
Out[25]: [1, 2]

返回所有元素

In [26]: a = [1,2,3,4,5,6]

In [27]: a[:]
Out[27]: [1, 2, 3, 4, 5, 6]

返回从某索引开始往后的所有元素,包含开始的索引

In [28]: a = [1,2,3,4,5,6]

In [29]: a[2:]
Out[29]: [3, 4, 5, 6]

返回最后2个元素

In [30]: a = [1,2,3,4,5,6]

In [31]: a[-2:]
Out[31]: [5, 6]

根据步长来返回元素,步长为2,每隔1个元素取一个

In [32]: a = [1,2,3,4,5,6]

In [33]: a[::2]
Out[33]: [1, 3, 5]

修改元素

In [34]: a = [1,2,3,4,5,6]

In [35]: a[1] = 'xy'
In [36]: a
Out[36]: [1, 'xy', 3, 4, 5, 6]

用相等的元素进行替换的方式进行修改

In [37]: a = [1,2,3,4,5,6]

In [38]: a[0:2] = ['x','y']

In [39]: a
Out[39]: ['x', 'y', 3, 4, 5, 6]

用多个元素来替换

In [37]: a = [1,2,3,4,5,6]

In [38]: a[0:2] = ['x','y','z']

In [39]: a
Out[39]: ['x', 'y','z', 3, 4, 5, 6]

删除元素

按照索引删除单个元素

In [41]: a = [1,2,3,4,5,6]

In [42]: del a[1]
In [43]: a
Out[43]: [1, 3, 4, 5, 6]

使用切片删除多个元素

In [45]: a = [1,2,3,4,5,6]

In [46]: del a[0:2]
In [47]: a                                        
Out[47]: [3, 4, 5, 6]

删除间隔的元素

In [45]: a = [1,2,3,4,5,6]

In [46]: del a[::2]
In [47]: a                                        
Out[47]: [2, 4, 6]

列表方法

len()方法

计算列表的长度

In [51]: a = [1,2,3,4,5,6,7,7,6,4]

In [52]: len(a)
Out[52]: 10

count()方法

该方法计算指定元素出现的次数

In [1]: a = [1,2,3,4,4,5,6]

In [2]: a.count(4)
Out[2]: 2

list.append(ob) 方法

将元素 ob 加在列表list的最后

In [3]: a = [1,2,3,4,5,6]

In [4]: a.append('yezi')

In [5]: a
Out[5]: [1, 2, 3, 4, 5, 6, 'yezi']

该方法每次只能添加一个元素,并不会因为是序列而展开

In [6]: a = [1,2,3,4,5,6]
   ...: a.append([11,12])
   ...: a
Out[6]: [1, 2, 3, 4, 5, 6, [11, 12]]

list.insert(x,ob) 方法

在列表索引x的位置上插入元素 ob ,先前索引位置上的元素要往后移

In [7]: a = [1,2,3,4,5,6]
   ...: a.insert(2,'xyz')
   ...: a
Out[7]: [1, 2, 'xyz', 3, 4, 5, 6]

list.remove(ob)方法

会将列表中第一个出现的 ob 删除,如果没有则会报错

In [8]: a = [1,2,3,4,5,6,7]
   ...: a.remove(4)
   ...: a
Out[8]: [1, 2, 3, 5, 6, 7]
In [12]: a = [1,2,3,4,5,6,7]

In [13]: a.remove(15)
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-13-fc48c954ed56> in <module>
----> 1 a.remove(15)

ValueError: list.remove(x): x not in list

list.pop(idx) 方法

会将索引 idx 处的元素删除,并返回这个元素

In [14]: a = [1,2,3,4,5,6,]

In [15]: a.pop(3)
Out[15]: 4

list.sort()方法

方法sort()永久性的修改列表元素的排列顺序

In [16]: a = [3,2,1,4,5]

In [17]: a.sort()

In [18]: a
Out[18]: [1, 2, 3, 4, 5]

还可以使用相反的顺序进行排列,只需要对sort()方法传递参数 reverse=True

In [19]: a = [3,2,1,4,5]

In [20]: a.sort(reverse=True)

In [21]: a
Out[21]: [5, 4, 3, 2, 1]

sorted(list)方法

该方法可以对列表进行临时性排序,原来的列表不会有改变

In [22]: a = [3,2,1,4,5]

In [23]: print(sorted(a))
[1, 2, 3, 4, 5]

In [24]: a
Out[24]: [3, 2, 1, 4, 5]

list.reverse()方法

该方法可以反转列表元素的排列顺序

In [28]: a = [3,2,1,4,5]

In [29]: a.reverse()

In [30]: a
Out[30]: [5, 4, 1, 2, 3]

list1.extend(list2)方法

在一个列表之后追加另外一个列表

In [31]: a = [1,2,3]

In [32]: b = [4,5,6]

In [33]: a.extend(b)

In [34]: a
Out[34]: [1, 2, 3, 4, 5, 6]

相关文章

  • Markdown 系列(三) 列表

    无序列表 由圆点组成的列表 列表1 列表2 列表3 列表1 列表2 列表3 列表1 列表2 列表3 +-*这三种符...

  • markdown常用的语法

    列表 有序列表: 列表项 1 列表项 2 无序列表: 列表项 1 列表项 2 列表项 3 列表项 4 列表项缩进两...

  • markdown常用语法

    标题 列表 无序列表- 列表1 - 列表1.1 -列表1.2- 列表2 有序列表1. 列表1 1. 列表1....

  • html阶段第二节第一天

    高级标签 列表标签 无序列表 列表一 列表二 ...... 有序列表 列表一 列表二 ...... 定义列表dl...

  • markdown测试

    段落 三级标题 四级标题 五级标题 列表 无序列表 列表1 列表2 列表3 列表1 列表2 列表3 有序列表 列表...

  • 学习小组Day1笔记-Herobrine

    Day1-Herobrine 列表 无序列表 无序列表 无序列表 无序列表 有序列表 有序列表 有序列表 有序列表...

  • H5学习从0到1-H5列表(8)

    列表的基本语法 ol:有序列表 ul:无序列表 li:列表项 dl:列表 dt:列表项 dd:列表描述 常用列表 ...

  • 第一篇简书

    MarkDown首次使用 无序列表 列表1 列表2 列表3 有序列表 有序列表1 有序列表2 有序列表3 有序列表...

  • 标题

    列表1 列表2 子列表1 子列表2 子列表3子子列表1子子列表2子子子列表1子子子列表2

  • markdown test

    header2 test> test 列表* 列表2 * 列表2.1 列表列表2列表2.1

网友评论

      本文标题:列表

      本文链接:https://www.haomeiwen.com/subject/kcxpnqtx.html