How to remove the first Item from a list?
我有一张清单,我想把它写进
Python列表
POP(索引)
1 2 3 4 5 6 | >>> l = ['a', 'b', 'c', 'd'] >>> l.pop(0) 'a' >>> l ['b', 'c', 'd'] >>> |
删除列表[索引]
1 2 3 4 5 | >>> l = ['a', 'b', 'c', 'd'] >>> del l[0] >>> l ['b', 'c', 'd'] >>> |
它们都会修改原始列表。
其他人建议使用切片:
- 复制列表
- 可以返回子集
此外,如果您正在执行许多pop(0),则应该查看collections.deque
1 2 3 4 5 6 | from collections import deque >>> l = deque(['a', 'b', 'c', 'd']) >>> l.popleft() 'a' >>> l deque(['b', 'c', 'd']) |
- 提供从列表左端弹出的更高性能
切片:
1 2 | x = [0,1,2,3,4] x = x[1:] |
它实际上会返回原始文件的一个子集,但不会对其进行修改。
1 2 3 | >>> x = [0, 1, 2, 3, 4] >>> x.pop(0) 0 |
更多信息。
你就这么做吧
1 2 | l = [0, 1, 2, 3, 4] l.pop(0) |
或
利弊
使用pop可以检索值
比如说
使用列表切片,请参见关于列表的python教程以了解更多详细信息:
1 2 3 | >>> l = [0, 1, 2, 3, 4] >>> l[1:] [1, 2, 3, 4] |
然后删除它:
1 2 3 4 | x = [0, 1, 2, 3, 4] del x[0] print x # [1, 2, 3, 4] |
您可以使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | l = [0, 1, 2, 3, 4] l.reverse() print l [4, 3, 2, 1, 0] l.pop() 0 l.pop() 1 l.pop() 2 l.pop() 3 l.pop() 4 |
您还可以使用
1 2 3 4 | >>>> a=[1,2,3,4,5] >>>> a.remove(a[0]) >>>> print a >>>> [2,3,4,5] |
如果使用numpy,则需要使用delete方法:
1 2 3 4 5 6 7 | import numpy as np a = np.array([1, 2, 3, 4, 5]) a = np.delete(a, 0) print(a) # [2 3 4 5] |