切片:对列表.元组.字符串.字典取中间的一部分,在C中一般是通过for循环拷贝/memcpy/strcat等操作.而python提供了更方便的切片操作符[m:n]:前闭后开,如果从0取m可以省略:如果只用[:]就是切整片:也可以从尾端切片[-m:]:前后的闭区间. 列表生成式:List(range(m,n)):构造一个大于等于m小于n的列表;对于想生成复杂的列表要用列表生成式:[生成对象的模型, for 变量 in 可迭代的对象 附加条件表达式] (1*1,2*2...且能被2整除的列表)方…
2.迭代 如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration).在Python中,迭代是通过for ... in来完成的. 只要是可迭代对象,无论有无下标,都可以迭代,比如dict就可以迭代key: >>> d = {'a': 1, 'b': 2, 'c': 3} >>> for key in d: ... print(key) ... a b c 还可以迭代value,通过 for valu…
4.生成器(generator) 通过列表生成式,我们可以直接创建一个列表.但是,受到内存限制,列表容量肯定是有限的.如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢?这样就不必创建完整的list,从而节省大量的空间. 创建一个generator,有很多种方法.第一种方法很简单,只要把一个列表生成式的[]改成(),就创建了一个generator: >>> g = (x * x for x in range(1, 11) if x % 2 == 0)…
一.切片(Slice) 在很多编程语言中,针对字符串提供了很多截取函数(i.e. substring),目的就是对字符串切片.python中没有针对字符串的截取函数,需要通过“切片”来完成. 取一个list或tuple的部分元素可以用切片 格式: 假定list或tuple组成的元素组名为m m[起始值:终止值:步长] 说明: a. 起始值如果是0,可以省略,但是中间的冒号(:)一定要带上 b. 起始值,终止值限定的是索引范围. c. 如果从前面开始取数,那么索引时不包括索引[终止值],因为索…