切片请看 Python str
list
方法 | 描述· | 例子 | 备注 |
---|---|---|---|
append | 向末尾添加值 | list.append('') ->list |
顺便添加类型 |
insert | 在指定位置添加元素,如果指定的下标不存在,那么就是在末尾添加 | list.insert(0,'渣渣辉') ->list |
不推荐使用,因为占用内存 |
extend | 合并两个list list2中仍有元素 | list1.extend(list2) ->list |
略 |
remove | 删除list 里面的一个元素,有多个相同的元素,删除第一个 | list.remove(xx) |
略 |
pop | 删最后一个元素 | list.pop() |
list.pop(n) 指定下标,删除指定的元素,如果删除一个不存在的元素会报错 |
del | 删除指定的元素 | del list[n] |
del list 删除整个列表, list删除后无法访问 |
clear | 删除整个列表 | list.clear() |
返回一个空list |
略 | 使用下标索引来访问列表中的值,同样你也可以使用方括号的形式截取字符 | list[n] |
略 |
略 | 查看某个元素在这个列表里的个数,如果改元素不存在,那么返回0 | list.count(xx) |
略 |
略 | 找到这个元素的小标,如果有多个,返回第一个,如果找一个不存在的元素会报错 | list.index(xx) |
略 |
reverse | 将列表反转 | list.reverse() ->list |
略 |
reversed | 迭代器降列表反转,不调用不会变 | list.reversed |
略 |
sort | 排序,默认升序 | list.sort() ->list |
list.sort(reverse=True) 降序排列 : list 中有字符串,数字时不能排序,排序针对同类型 |
len() | 列表元素个数 | len(list) |
略 |
max() | 返回列表元素最大值 | max(list) |
略 |
min() | 返回列表元素最小值 | min(list) |
略 |
略 | 将元组转换为列表 | list(seq) |
略 |
in | list是否包含 | print('x' in lst) |
略 |
not in | list不包含 | print('x' not in lst) |
略 |
copy | list浅拷贝 | lst.copy() |
略 |
deepcopy | 深拷贝 | import copy ; l2 = copy.deepcopy(ls) |
需要 import copy
|
list 一些demo
- enumerate 打印元素对应的下标
>>> for i , v in enumerate(l):
>>> print('index = %d value = %s'%(i,v))
结果:
... index = 0 value = 北京
... index = 1 value = 上海
... index = 2 value = 广州
-
列表生产式 List Comprehensions
- 实例1:要生成list
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10 .....100]
可以用:
>>> lst = list(range(1,101)) >>> print(lst) ... [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]
- 生成
[1x1, 2x2, 3x3, ..., 10x10]
>>> lst = list(x * x for x in range(1,11)) >>> print(lst) ... [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
- for循环后面还可以加上if判断,这样我们就可以筛选出仅偶数的平方:
>>> lst = list(x * x for x in range(1,11) if x%2== 0) >>> print(lst) ... [4, 16, 36, 64, 100] # 这句话的意思: list表面返回一个集合, x*x是 for 中的x值,每次循环后相*,再去判断结果%2==0,放到集合中去
- 使用两层循环,可以生成全排列
>>> lst = [m + n for m in 'ABC' for n in 'XYZ'] >>> print(lst) ... ['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']
- 打印字典
>>> d = {'x': 'A', 'y': 'B', 'z': 'C' } >>> for k, v in d.items(): >>> print(k, '=', v) ... x = A ... y = B ... z = C
>>> d = {'x': 'A', 'y': 'B', 'z': 'C' } >>> lst = [k + '=' + v for k, v in d.items()] >>> print(lst) ... ['x=A', 'y=B', 'z=C']
- 实例1:要生成list
-
删除list中的元素
网友评论