pop函数可以将列表指定位置或者列表尾部的数据从列表里删除,如果列表为空时使用了pop程序会异常出错。
语法:
列表.pop([index])
pop的返回值为删除的值,括号里的[index]的意思是pop函数可以不带参数即不指定位置的情况下删除并返回列表尾部的值,如果指定了index,那就返回index位置的值,如果index位置超出了列表各元素位置也会弹出异常错误。
a = range(4)
print "0 now a is ", a
ret = a.pop()
print "1 a.pop() ->", ret
print "1 now a is ", a
ret = a.pop(1)
print "2 a.pop(1) ->", ret
print "2 now a is ", a
ret = a.pop(5)
print "3 a.pop(5) ->", ret
print "3 now a is ", a
程序运行时的结果如下:
now a is [0, 1, 2, 3]
a.pop() 3
now a is [0, 1, 2]
a.pop(1) 1
now a is [0, 2]
Traceback (most recent call last):
File "test.py", line 35, in <module>
ret = a.pop(5)
IndexError: pop index out of range
从程序的执行结果可以看到ret = a.pop(5)这条语句出错了,原因是a列表此时只有[0, 2]这两个元素了,长度为2即index可以取值0和1,而index为5时超出了列表的index范围,即错误"index out of range"的意思就是这个意思。