1、切片,slice操作符:[]
如:L[1,3],在list L中从索引1开始取,直取到索引3为止。结果返回包含取出值的list;
倒数切片:L[-1],取出倒数第一个元素;
取出前10个数:L[:10];
取出后10个数:L[-10:];
前11-20个数:L[10:20];
前10个数,每两个取一个:L[:10:2];
所有数,每5个取一个:L[::5];
原样复制一个list:L[:];
字符串'xxx'或Unicode字符串u'xxx'也可以看成是一种list,每个元素就是一个字符。tuple可以用切片操作,操作的结果仍是tuple。
2、迭代
给list或tuple,通过for循环来遍历,这种遍历称为迭代(Iteration),python中迭代是通过for...in来完成的。
dict迭代的是key。如果要迭代value,可以用for value in d.itervalues(),如果要同时迭代key和value,可以用for k, v in d.iteritems()。
判断对象是否为可迭代对象:collections模块的Iterable类型,结果返回一个布尔类型值。
下标循环:enumerate()
3、列表生产式
range():range(1, 11) =》[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for循环生成list:[x * x for x in range(1,11)] =》[1,4,9,16,25,36,49,64,81,100]
筛选偶数的平方:[x * xforxinrange(1,11)ifx %2==0] =》[4,16,36,64,100]
生成全排列:[m + nformin'ABC'fornin'XYZ'] =》['AX','AY','AZ','BX','BY','BZ','CX','CY','CZ']
4、生成器
一边循环一边计算的机制,称为生成器(Generator)。