Python3列表

列表的访问、截取、删除(del list[])不再赘述。

嵌套列表

>>> str1 = [1,2,3]
>>> str2 = [5,6,7]
>>> str3 = [str1,str2]
>>> str3
[[1, 2, 3], [5, 6, 7]]
>>> str3[1]
[5, 6, 7]
>>> str3[1][1]
6

Python列表函数与方法

函数

Python包含以下函数:

序号函数
1 len(list)
列表元素个数
2 max(list)
返回列表元素最大值
3 min(list)
返回列表元素最小值
4 list(seq)
将元组转换为列表

方法

Python列表常见的有10中操作方法,分别是添加、删除、查找、统计、反转、清空、替换、排序、切片、复制

添加(append()、insert()、extend())

append():向列表尾部添加一个新的元素(最常用)

insert():   在指定位置插入一个元素

extend():  一次性添加多个元素,在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

>>> str1 = [1,2,3,'a','b']
>>> str1.append(5)
>>> str1
[1, 2, 3, 'a', 'b', 5]
>>> str1.insert(1,1.5)
>>> str1
[1, 1.5, 2, 3, 'a', 'b', 5]
>>> str2 = [6,'c']
>>> str1.extend(str2)
>>> str1
[1, 1.5, 2, 3, 'a', 'b', 5, 6, 'c']

 

删除(pop()、remove()、del())

pop():没有指定时,默认删除最后一个元素,有指定时删除指定元素,返回删除的元素。

>>> a = [1,2,3,4]
>>> a.pop()
4
>>> a.pop()
3
>>> a = [1,2,3,4]
>>> a.pop(2)
3
>>> a.pop(3)
Traceback (most recent call last):
  File "<pyshell#17>", line 1, in <module>
    a.pop(3)
IndexError: pop index out of range

remove():删除指定的元素,返回删除后的列表。

>>> a = [1,2,3,4]
>>> a.remove(0)
Traceback (most recent call last):
  File "<pyshell#11>", line 1, in <module>
    a.remove(0)
ValueError: list.remove(x): x not in list
>>> a = [1,2,3,4]
>>> a.remove(1)
>>> a
[2, 3, 4]

del():(del是python语句,而不是列表方法)

>>> a = [1,2,3,4]
>>> del a[1]
>>> a
[1, 3, 4]
>>> del a
>>> a
Traceback (most recent call last):
  File "<pyshell#22>", line 1, in <module>
    a
NameError: name 'a' is not defined

 

查找

index():查找列表中元素对应的位置。

>>> a = [1,2,3,4]
>>> a.index(2)
1
>>> a.index(1)
0
>>> a.index(5)
Traceback (most recent call last):
  File "<pyshell#29>", line 1, in <module>
    a.index(5)
ValueError: 5 is not in list

 

统计

count():统计列表中某个元素的个数

>>> a = [1,1,2,3,4,5,5,6,6,6]
>>> a.count(2)
1
>>> a.count(1)
2
>>> a.count(6)
3

 

反转

reverse():将列表反转。

>>> a = [1,1,2,3,4,5,5,6,6,6]
>>> a
[1, 1, 2, 3, 4, 5, 5, 6, 6, 6]
>>> a.reverse()
>>> a
[6, 6, 6, 5, 5, 4, 3, 2, 1, 1]

 

清空

clear():清空列表的内容,不是删除列表,注意与del()区分。

>>> a
[6, 6, 6, 5, 5, 4, 3, 2, 1, 1]
>>> a.clear()
>>> a
[]

 

替换

>>> a = [1,2,3,4]
>>> a[1] = 1.5      
>>> a
[1, 1.5, 3, 4]

 

排序

sort():按照ASCII码进行排序

>>> a = ['a','c','*','&','e']
>>> a.sort()
>>> a
['&', '*', 'a', 'c', 'e']
>>> a = [4,3,2,1]
>>> a.sort()
>>> a
[1, 2, 3, 4]

 

切片

Python中符合序列的有序序列都支持切片(slice),例如列表,字符串,元组。

     格式:[start:end:step]

     start:起始索引,从0开始,-1表示结束

     end:结束索引

     step:步长。步长为正时,从左向右取值。步长为负时,反向取值

    注意切片的结果不包含结束索引,即不包含最后的一位,-1代表列表的最后一个位置索引

>>> a = [1,2,3,4,5,6]
>>> b = a[:] #省略全部,代表截取全部内容,可以用来将一个列表拷给另一个列表
>>> b
[1, 2, 3, 4, 5, 6]
>>> c = a[0:-1:1] #从位置0开始到结束,每次增加1,截取。不包含结束索引位置
>>> c
[1, 2, 3, 4, 5]
>>> d = a[:3] #省略起始位置的索引,以及步长。默认起始位置从头开始,默认步长为1,结束位置索引为3
>>> d
[1, 2, 3]
>>> e = a[0:5:3] #从第一个位置到六个给位置,每3个取一个值
>>> e
[1, 4]
>>> f = a[5:0:-1] #反向取值
>>> f
[6, 5, 4, 3, 2]
>>> 
>>> g = a[::-1]
>>> g
[6, 5, 4, 3, 2, 1]

 

复制

copy()

>>> a = [1,2,3,4,5,6]
>>> a.copy()
[1, 2, 3, 4, 5, 6]

这种copy是浅copy

 

posted on 2019-08-01 16:50  一颗平常心  阅读(135)  评论(0)    收藏  举报

导航