列表也通常被称为list 数组 array
使用方括号([])即可
alist = [123,'abc','def',666,True]
空列表的定义:alist = [] 或 alist = list()
列表它的位置,或索引,第一个索引是0,第二个索引是1,依此类推
实例:
>>> alist = ['a','b','c','d']
>>> len(alist)
4
实例:
>>> alist = ['a','b','c','d']
>>> max(alist)
'd'
实例:
>>> alist = ['a','b','c','d']
>>> min(alist)
'a'
实例:
>>> aTuple = (1,'sa',56,'ccc')
>>> list(aTuple)
[1, 'sa', 56, 'ccc']
Python中符合序列的有序序列都支持切片(slice),例如列表,字符串,元组。
格式:【start:end:step】
start:起始位置
end:结束位置
step:间距
举例:
l[::-1]可以反转列表,就是个固定用法,理解不了就背下来
A、append() 方法:用于在列表末尾追加新的对象,只能添加一个元素。
实例:
>>> alist = [123,'abc','def',666]
>>> alist.append('ccc')
>>> print('更新后的列表:',alist)
更新后的列表: [123, 'abc', 'def', 666, 'ccc']
B、insert() 方法:将指定对象插入到列表中的指定位置,只能插入一个元素。
实例:
>>> alist.insert(0,'start')
>>> print(alist)
['start', 123, 'abc', 'def', 666, 'ccc']
C、extend() 方法:通过在列表末尾追加可迭代对象中的元素来扩展列表。
实例:
输出:
A、列表中pop()方法:通过指定元素的索引值来移除列表中的某个元素(默认是最后一个元素),并且返回该元素的值,如果列表为空或者索引值超出范围会报一个异常。
实例:
>>> alist = ['start', 123, 'abc', 'def', 666, 'ccc']
...
>>> alist.pop() #不填索引值,默认删除后最后一个元素
'ccc' #返回值
>>> print('默认删除后最后一个元素:',alist)
默认删除后最后一个元素: ['start', 123, 'abc', 'def', 666]
>>> alist.pop(2)
'abc'
>>> print('删除后指定元素后的列表:',alist)
删除后指定元素后的列表: ['start', 123, 'def', 666]
B 、列表 remove() 方法:通过指定元素的值来移除列表中某个元素的第一个匹配项,如果这个元素不在列表中会报一个异常。
实例:
>>> alist = ['start', 123, 'abc', 'def', 666, 'ccc']
>>> alist.remove('abc')
>>> print(alist)
['start', 123, 'def', 666, 'ccc'] #删除了元素‘abc’
注意:remove()只删除一个指定的值。如果要删除的值可能在列表中出现多次,就需要使用循环来判断是否删除了所有的值。
C、del语句 :删除指定位置的元素
实例:
>>> alist = ['start', 123, 'abc', 'def', 666, 'ccc']
>>> del alist[0] #删除第一个元素
>>> print(alist)
[123, 'abc', 'def', 666, 'ccc']
D、clear: 清空列表中的内容
>>> print(alist)
['start', '大山', 'abc', 'def', 666, 'ccc']
>>> alist.clear()
>>> alist
[]
修改元素的时候,通过下标来确定要修改的是哪个元素,然后进行修改
实例:
>>> alist = ['start', 123, 'abc', 'def', 666, 'ccc']
>>> alist[1] = '大山'
>>> print(alist)
['start', '大山', 'abc', 'def', 666, 'ccc']
A、查找列表中的某个元素
实例:
>>> alist = ['start', 123, 'abc', 'def', 666, 'ccc']
>>> print(alist[0]) #获取第一个元素
start
>>> print(alist[-1]) #获取最后一个元素
ccc
B、in 操作符:判断值是否在列表中,并返回true或false
实例:
>>> alist = ['start', 123, 'abc', 'def', 666, 'ccc']
>>> 'start' in alist
True
C、not in 操作符:判断是否不在列表,并返回True或False
实例:
>>> alist = ['start', 123, 'abc', 'def', 666, 'ccc']
>>> 122343 not in alist
True
D、count方法:统计指定值在列表中出现的次数,返回指定值在列表这个能出现的次数
实例:
>>> alist = ['start', 123, 'abc', 'def', 666, 'ccc',123]
>>> alist.count(123)
2
E、index方法:用于从列表中找出某个对象第一个匹配项的索引位置,如果这个对象不在列表中会报一个异常。
语法:
参数:
obj -- 查找的对象。
start -- 可选参数,开始索引,默认为0。(可单独指定)
stop -- 可选参数,结束索引,默认为列表的长度。(不能单独指定)
实例1:
>>> alist = ['start', 123, 'abc', 'def', 666, 'ccc',123]
>>> alist.index('abc')
2
实例2:
>>> alist = ['start', 123, 'abc', 'def', 666, 'ccc',123]
>>> alist.index(123,5) #从索引5开始查找对象123,找到的索引值为6
6
实例3:
>>> alist2 = [4,6,72,1,2,4,7,3]
>>> alist2.index(4,5,len(alist2)) #最后一个参数就是列表长度,不能改
5
>>> alist2.index(4,5,)
5
>>> alist2.index(4,5,7)
5
A、sort() 方法:对列表进行排序,排序的元素类型需要一致
sort() 方法语法:
- cmp -- 可选参数, 如果指定了该参数会使用该参数的方法进行排序。
- key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
- reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
以下实例,默认sort排序为升序:
实例1:
>>> alist = ['beijing','tianjin','xiamen','shanghai','hunan']
>>> alist.sort()
>>> print(alist)
['beijing', 'hunan', 'shanghai', 'tianjin', 'xiamen']
实例2:
>>> alist2 = [4,6,72,1,2,4,7,3]
>>> alist2.sort()
>>> print(alist2)
[1, 2, 3, 4, 4, 6, 7, 72]
以下实例,降序输出列表:
>>> alist2 = [4,6,72,1,2,4,7,3]
>>> alist2.sort(reverse=True)
>>> print(alist2)
[72, 7, 6, 4, 4, 3, 2, 1]
关于cmp、key参数以后再补充。
参数解释:
(1)iterable指定要排序的list或者iterable,不用多说;
(2)cmp为函数,指定排序时进行比较的函数,可以指定一个函数或者lambda函数,如:
students为类对象的list,没个成员有三个域,用sorted进行比较时可以自己定cmp函数,例如这里要通过比较第三个数据成员来排序,代码可以这样写:
(3)key为函数,指定取待排序元素的哪一项进行排序,函数用上面的例子来说明,代码如下:
key指定的lambda函数功能是去元素student的第三个域(即:student[2]),因此sorted排序时,会以students所有元素的第三个域来进行排序。
B、reverse()方法:对列表中的元素进行反向排序。
实例:
>>> alist2 = [4,6,72,1,2,4,7,3]
>>> alist2.reverse()
>>> print(alist2)
[3, 7, 4, 2, 1, 72, 6, 4]
print(nums[4][5][1]) #取二
print(nums[5][1]) #取五
print(nums[-1][-1]) #取五
A、输出每个元素:
实例:
输出:
abc
23
中国
ccc
ddd
89
B、enumerate() 函数
enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
语法:
enumerate(sequence,[start=0])
参数:
- sequence -- 一个序列、迭代器或其他支持迭代对象。
- start -- 下标起始位置。
实例1:
输出:
[(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd')]
实例2:
在for循环中的应用实例:
想输出索引以及对应的元素。
普通for循环:
输出:
0 a
1 b
2 c
3 d
For循环使用enumerate()
输出:
0 a
1 b
2 c
3 d
输出:
a
b
c
d
Range()函数可创建一个整数列表,一般用在 for 循环中。
语法:
range(start,stop[,step])
参数说明:
- start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
- stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
- step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
实例1:创建一个列表,里面的元素为1-10整数
输出:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
实例2:同上效果
输出:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
实例3:创建一个列表,里面元素是1-10中的偶数
实例3:创建一个列表,里面元素是1-10中的奇数
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/16210.html