列表

一.列表

1.列表的定义

列表是一个有序的集合。

names = ['Joy', 'Lily', 'Marry']

2.正向访问列表中的元素

>>> names[0] #正向访问列表中的元素时,索引值从0开始取
'
Joy' >>> names[1] 'Lily' >>> names[2] 'Marry'

3.逆向访问列表中的元素

>>> names[-1] #逆向访问时,索引值从-1开始取
'Marry'
>>> names[-2]
'Lily'

 3.切片取值

语句:列表名[下标1:下标2:步长3]   以步长3取出下标1到下标2(包括下标1不包括下标2)之间的元素。

 students =['xiaoMing', 'LiLei', 'HanMeimei', 'Paul', 'Lucy', 'Lily', 'Jonh']

students[0:3] #取出下标0至下标3(包括下标1不包括下标3)之间的元素
['xiaoMing', 'LiLei', 'HanMeimei']
students[2:4] #取出下标2至下标4(包括下标2不包括下标4)之间的元素
['HanMeimei', 'Paul']
 students[0:] #不写终止位置的下标值就默认取到列表最后一个元素,且包含最后一个元素
['xiaoMing', 'LiLei', 'HanMeimei', 'Paul', 'Lucy', 'Lily', 'Jonh']
students[:4] #不写起始位置的下标值,默认从列表的第一个元素开始取
['xiaoMing', 'LiLei', 'HanMeimei', 'Paul']
 students[::2] #以2的步长来取值,隔一取一
['xiaoMing', 'HanMeimei', 'Lucy', 'Jonh']
View Code

4.给列表追加元素

列表名.append(‘元素’)

students =['xiaoMing', 'LiLei', 'HanMeimei', 'Paul', 'Lucy', 'Lily', 'Jonh']
students.append('Joy')
>>> students
['xiaoMing', 'LiLei', 'HanMeimei', 'Paul', 'Lucy', 'Lily', 'Jonh', 'Joy']
View Code

6.向列表中间插入元素

列表名.insert(插入位置, 插入内容)

students =['xiaoMing', 'LiLei', 'HanMeimei', 'Paul', 'Lucy', 'Lily', 'Jonh']
students.insert(3, 'Mily') #将Mily插在下标为3的位置,原来下标为3及3以后的元素顺次往后挪一位
>>> students
['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Paul', 'Lucy', 'Lily', 'Jonh', 'Joy'
View Code

7.删除列表中的元素

students = ['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Paul', 'Lucy', 'Lily', 'Jonh', 'Joy']
del students[4]
>>> students
['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Joy']

8.修改列表中的元素

直接为再次赋值就能改写元素。

students = ['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Joy']
>>> students[-1] = 'Kate'
>>> students
['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate']

9.扩展扩展

列表1.extend(列表2) #将列表2中的元素写进列表1的末尾

students = ['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate']
>>> students2 = ['XiaoMing', 'XiaoHong']
>>> students.extend(students2)
>>> students
['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']

10.列表重复

 students2 = ['XiaoMing', 'XiaoHong']
>>> stu_repet=students2*3
>>> stu_repet
['XiaoMing', 'XiaoHong', 'XiaoMing', 'XiaoHong', 'XiaoMing', 'XiaoHong']

11.判断元素是否在列表中

students = ['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
print('Lily' in students)
True

12.二维列表

animal = [['rabbit', 'dog', 'cat'], ['fish','shrimp'], ['monkey', 'chick', 'duck']]
>>> animal[2][0]
'monkey'

二.列表的方法

1.list.pop(obj)

移除列表中指定下标的元素(默认最后一个元素),并且返回该元素的值。

students = ['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
 students.pop(1)
'LiLei'  #返回被移除的值
>>> students
['xiaoMing', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']

2.list.remove(obj)

移除列表中某个值的第一个匹配项

 students = ['xiaoMing', 'HanMeimei', 'XiaoMing', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
students.remove('XiaoMing')  #移除了第一个XiaoMing
>>> students
['xiaoMing', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']

3.清空列表

students2 = ['XiaoMing', 'XiaoHong']
students2.clear()
>>> students2
[]    

4.list.index(obj)

从列表中找出某个值第一个给匹配项的索引位置

students = ['xiaoMing', 'HanMeimei', 'XiaoMing', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
>>> students.index("XiaoMing")
2

5.len(list)

列表元素个数

students = ['xiaoMing', 'HanMeimei', 'XiaoMing', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
>>> len(students)
10

6.list.count()

计算某个值在列中出现的次数

students = ['xiaoMing', 'HanMeimei', 'XiaoMing', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
>>> students.count('XiaoMing')
2

7.max(list)

返回列表元素最大值

 num1 = [1 ,2, 3]
>>> max(num1)
3

name = ['joy', 'Lily']
>>> max(name)
'joy'

8.list.reverse()

翻转列表中的元素

 name = ['joy', 'Lily']
>>> name.reverse()
>>> name
['Lily', 'joy']

9.list.sort([founc])

对原列进行排序

num2 = [3, 4, 1, 2, 6]
>>> num2.sort()
>>> num2
[1, 2, 3, 4, 6]
com = ['DB', 'Pfizer', '*ali', '123hao', 'baidu']
>>> com.sort()
>>> com
['*ali', '123hao', 'DB', 'Pfizer', 'baidu']
#默认特殊字符在最前面,其次是数字,大写字母,小写字母

10.list.copy

复制列表

com = ['*ali', '123hao', 'DB', 'Pfizer', 'baidu']
>>> com_copy=com.copy()
>>> com_copy
['*ali', '123hao', 'DB', 'Pfizer', 'baidu']

11list(seq)

将元组转换为列表

 tuple1=('*ali', '123hao', 'DB', 'Pfizer', 'baidu')
>>> com_CN = list(tuple1)
>>> com_CN
['*ali', '123hao', 'DB', 'Pfizer', 'baidu']
原文地址:https://www.cnblogs.com/joyli/p/tong_wan_dou.html