增量赋值运算符有 += 和 *=.+= 背后的特殊方法是 __iadd__,如果一个类没有实现 __iadd__ 方法,Python 会退一步调用 __add__ 方法.这两个方法的区别在于,__iadd__ 为就地改动,不会改变原值的内存地址,而 __add__ 方法会得到一个新对象. 考虑下面一个表达式: a += b 如果 a 实现了 __iadd__ 方法,a 会就地改动(内存地址不变).如果 a 没有实现 __iadd__ 方法,那么 a += b 这个表达式的效果就变得跟 a = a
在序列上执行聚集函数(比如sum() , min() , max() ) eg1: >>>nums = [1, 2, 3, 4, 5]>>>s = sum(x * x for x in nums) eg2: >>>import os >>>files=os.listdir('C:\share') >>>if any(name.endswith('.py') for name in files): ... print(
在Python中有六种内建的序列:列表.元组.字符串.Unicode字符串.buffer对象和xrange对象.在这里暂时只讨论字符串.列表和元组的遍历. 一. 序列遍历 序列有两种遍历:一种通过值 另外一种通过索引 1.1 值遍历:s='abc'for x in s: print x z=('andy','leaf')for x in z: print x z={'tree','leaf'}for x in z: print x 1.2 索引遍历: l='abcd'for x in range
Python中的序列操作 可变对象:列表.字典.集合 不可变对象:数值.字符串.元组.forzenset 1.序列的通用操作 (1)测试元素是否存在 x in S和x not in S,返回True或False (2)加法和乘法 S1+S2或者S*N或者N*S(其中S1和S2是同一种序列类型) (3)len().max()和min()函数 len()返回序列的元素个数,min()和max()分别返回序列中最小.最大的元素. (4)count()找出元素在序列中出现的次数 (5)索引取元素:S[i