列表切割
a = [1,2,3,4,5,6]
如果从列表的头部开始切割,那么忽略start,列如a[:3]-->[1,2,3]
如果一直切割到列表的尾部,那么可以忽略end,列如a[4:]-->[5,6]
列表推导式
a = [1,2,3,4,5,6]
half = map(lambda x:x/2,a)
half = [x/2 for x in a if x!=0]
#一个很大的好处是:列表推导式可以对值进行判断
用迭代器来保存数组
list = (x*2 for x in ragne(10000))#注意是圆括号,不是方括号
for i in list:
print i,
迭代
- 需要获取序列的index要用enumerate
enumerate可以接受第二个参数,作为迭代器加在index上的值
a = [‘a’,’b’,’c’,’d’]
for index,i in enumerate(a):
print index,i
输出:0,’a’
1,’b’
2,’c’
3,’d’
for index,i in enumerate(a,2):
print 2,’a’
3,’b’
4,’c’
5,’d’
用zip来同时遍历两个序列
a = [1,2,3]
b = ['a',',b','c','d']
#虽然列表长度不一样,但只要有一个列表耗尽,则迭代就会停止
for i,j in zip(a,b):
print i,j
输出:1,'a'
2,'b'
3,'c'