八、列表

作者: 焰火青春 | 来源:发表于2017-08-13 19:03 被阅读19次

1、列表

数组:元素数据类型必须一致
列表:不要求数据类型一致,可以是整型、浮点型,也可以是字符串等

1.1、创建列表

(1)、普通列表

>>>number = [1,2,3,4,5]

(2)、混合列表

>>> mix = [1,'python',[1,2,3]]

(3)、空列表

>>> empty = []

1.2、向列表添加元素

(1)、向末尾添加元素

单个元素 list.append()
多个元素 list.extend([])
>>> list = [1,2,3]
>>> list.append(4)
>>> list
[1, 2, 3, 4]
>>> list.extend([5,6])   #extend()方法是使用一个列表拓展另一个列表,所以其参数是列表
>>> list
[1, 2, 3, 4, 5, 6]

(2)、任意位置添加元素

list.insert(a, b)    #参数a:要插入的列表的位置,参数b:要插入的元素

>>> list = [1,2,3,4]
>>> list.insert(1, 'python')    #1为索引号
>>> list
[1, 'python', 2, 3, 4]

1.3、从列表中获取元素

(1)、获取单个元素
通过索引值获取单个元素,索引号从0开始

>>> color = ['blue', 'white', 'red']
>>> color[1]
'white'

>>> color[0], color[2] = color[2], color[0]
>>> color
['red', 'white', 'blue']    #元素对换位置

(2)、列表分片(获取多个元素)

list[a:b]    #参数a、b为索引值,a为开始位置,b是结束位置,不包括结束位置
>>> color = ['blue', 'white', 'red']
>>> color[0:2]   
['blue', 'white']

>>> color[:2]      #获取索引值2以前的元素,不包括2的元素
['blue', 'white']

>>> color[1:]       #获取索引值为1以后的元素,包括1的元素
['white', 'red']

>>> color[:]          #对原列表进行拷贝
['blue', 'white', 'red']

>>> list = [1,2,3,4,5,6,7,8,9]
>>> list[0:9:2]    # 列表分片第三个参数表示步进,默认为1
[1, 3, 5, 7, 9]

>>> list[::2]
[1, 3, 5, 7, 9]

>>> list[::-1]        # 第三个参数为复数则表示原列表原地翻转
[9, 8, 7, 6, 5, 4, 3, 2, 1]

>>> list[::-2]
[9, 7, 5, 3, 1]

1.4、从列表删除元素

(1)、remove()方法
不需要知道元素所在列表的位置,参数为将要删除的元素

>>> num = [1,2,3]
>>> num.remove(2)
>>> num
[1, 3]

(2)、del[]语句
参数:所删除元素的索引值

>>> num1 = [1,2,3]
>>> del num1[1]
>>> num1
[1, 3]

>>> del num1                #删除整个列表

(3)pop()方法
默认弹出列表最后一个元素,其参数也可以接收索引值,进行弹出对应元素

>>> list = [1,2,3,4,5,6]
>>> list.pop()         # 默认弹出最后一个,并返回
6
>>> list
[1, 2, 3, 4, 5]
>>> list.pop(3)     # 指定索引值
4

1.5、列表的常用操作符

>>> list1 = [123]
>>> list2 = [456]
>>> list3 = ['abc']
>>> list4 = ['bcd']
>>> list5 = [123,456]
>>> list6 = [234,123]
>>> list7 = list1 + list2     #连接操作符
>>> list7
[123, 456]
>>> list8 = list3 + list4
>>> list8
['abc', 'bcd']
>>> list1 < list2             #比较操作符
True
>>> list3 > list4
False
>>> list5 > list6         #包含多个元素的列表比较时,默认从第一个元素开始比较,若真则整个列表赢了,字符串比较是第一个字符的ASCII码值对比
False
>>> (list1 < list2) and (list1 == list3)     #逻辑操作符
False
>>> list1 = [123]    
>>> list1*2                     #重复操作符
[123, 123]
>>> list = [1,2,3,[4,5]]
>>> 1 in list              #成员操作符in、not in
True
>>> 6 not in list
True
>>> 4 in list         #列表中的列表元素不能直接访问
False
>>> 4 in list[3]     #列表中的列表元素访问可以添加索引号
True

>>> list = [1,2,3,[4,5]]   
>>> list[3][0]   #获取列表的列表元素,第一个参数为第一个列表索引值,第二个参数为第二个列表索引值
4

1.6、列表的其他方法

查看所有列表:dir(list)
(1)、count()方法
计算其参数在列表中出现的次数

>>> list1 = [1,1,2,3,4,5,8]
>>> list1.count(1)
2

(2)、index()方法
返回其参数在列表中的位置

>>> list1.index(1)   #列表中两个相同元素,返回的为第一个的位置
0
>>> list1.index(3)
3

>>> list1.index(1, start,stop)  #设定索引范围,可以查找第二个目标位置
1

(3)、reverse()方法
将整个列表原地翻转

>>> list1.reverse()
>>> list1
[8, 5, 4, 3, 2, 1, 1]

(4)、sort()方法
用指定的方式对列表元素排序,默认为从小到大排序
从大到小排序时,可以使用sort排序后再使用reverse()方法翻转
另外可以使用sort()方法的第三个参数sort(func, key, reverse)
默认sort(reverse = False),表示不颠倒顺序。

>>> list2 = [2,1,4,6,3,9,8]
>>> list2.sort()
>>> list2
[1, 2, 3, 4, 6, 8, 9]

>>> list2.sort(reverse = True)   #True时表示颠倒顺序
>>> list2
[9, 8, 6, 4, 3, 2, 1]

(5)、copy()方法
与切片一样,不与原列表变化
(6)、clear()方法
清空整个列表,变成空列表

1.7、关于列表分片的补充

列表分片与拷贝不与原列表变化而变化,新赋值的列表相反

>>> list1 = [1,3,4,2,7,9]
>>> list2 = list1[:]
>>> list2
[1, 3, 4, 2, 7, 9]
>>> list3 = list1
>>> list3
[1, 3, 4, 2, 7, 9]
>>> list1.sort()      # 对原列表从小到大排序
>>> list1
[1, 2, 3, 4, 7, 9]
>>> list2
[1, 3, 4, 2, 7, 9]       #切片的列表不变化
>>> list3                 #赋值的列表变化
[1, 2, 3, 4, 7, 9]

相关文章

  • 八、列表

    1、列表 数组:元素数据类型必须一致列表:不要求数据类型一致,可以是整型、浮点型,也可以是字符串等 1.1、创建列...

  • 八,列表的样式

    列表的样式: list-style-type:设置列表项目的外观,属性值:none,disc,circle,squ...

  • Python3遍历列表

    遍历列表,指将列表中的所有元素取出来 创建一个列表 stus = [ “孙悟空”, “猪八戒”,“沙和尚”,"唐僧...

  • MySql(八)列表增改删

    (一)插入-增 (1) INSERT INTO 列表名(列表属性,列表属性,列表属性,列表属性...)VALUE...

  • 后台产品设计要点

    *一、后台设计八大法则 1、布局-有规律 2、列表-排序 默认按照创建时间降序排序,信息反复修改的列表按照修改时间...

  • 八、循环获取列表的value

    $(document).off().click 在iPhone上需要做如下处理: 来源:https://stac...

  • Python基础总结(八)(列表List)

    Python中的列表和字符串都是序列类型,对字符串的一些操作在列表中同样适合。 1.创建一个列表的方式: 上面的表...

  • 04_前端项目实战_day2

    六、logo和搜索区的实现 七、主体1区右侧图标的实现 八、主体3区产品列表的实现 九、主体2区产品列表的实现 十...

  • APP导航设计模式

    下图是八种导航设计模式对比图: 一、列表式导航 列表式导航是最常见的主导航形式之一,是APP设计中不可少的一个导航...

  • Markdown 系列(三) 列表

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

网友评论

    本文标题:八、列表

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