摘要: 生成器都是Iterator对象,但list、dict、str虽然是Iterable,却不是Iterator。 把list、dict、str等Iterable变成Iterator可以使用iter()函数: 你可能会问,为什么list、dict、str等数据类型不是Iterator? 这是因为Pytho 阅读全文
posted @ 2018-08-19 21:02 地瓜来了 阅读(386) 评论(0) 推荐(0) 编辑
摘要: def triangles(num): L2 = [1, 1] if num >= 1: L1=1 yield L1 if num >= 2: L = [1, 1] yield L if num >= 3: for i in range(num-2): L3 = [L2[i]+L2[i+1] for 阅读全文
posted @ 2018-08-19 20:59 地瓜来了 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 要创建一个generator,有很多种方法。第一种方法很简单,只要把一个列表生成式的[]改成(),就创建了一个generator: 创建L和g的区别仅在于最外层的[]和(),L是一个list,而g是一个generator。 阅读全文
posted @ 2018-08-19 20:17 地瓜来了 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 如果要对list实现类似Java那样的下标循环怎么办?Python内置的enumerate函数可以把一个list变成索引-元素对,这样就可以在for循环中同时迭代索引和元素本身: 阅读全文
posted @ 2018-08-19 19:57 地瓜来了 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 默认情况下,dict迭代的是key。如果要迭代value,可以用for value in d.values(),如果要同时迭代key和value,可以用for k, v in d.items() 阅读全文
posted @ 2018-08-19 19:55 地瓜来了 阅读(135) 评论(0) 推荐(0) 编辑
摘要: python去除字符串中间空格的方法 1、使用字符串函数replace 看上这种方法真的是很笨。 2、使用字符串函数split 3、使用正则表达式 阅读全文
posted @ 2018-08-19 19:53 地瓜来了 阅读(4285) 评论(0) 推荐(0) 编辑
摘要: 可变参数 在Python函数中,还可以定义可变参数。顾名思义,可变参数就是传入的参数个数是可变的,可以是1个、2个到任意个,还可以是0个。 我们以数学题为例子,给定一组数字a,b,c……,请计算a2 + b2 + c2 + ……。 要定义出这个函数,我们必须确定输入的参数。由于参数个数不确定,我们首 阅读全文
posted @ 2018-08-19 10:57 地瓜来了 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 要计算str包含多少个字符,可以用len()函数: len()函数计算的是str的字符数,如果换成bytes,len()函数就计算字节数: 可见,1个中文字符经过UTF-8编码后通常会占用3个字节,而1个英文字符只占用1个字节。 阅读全文
posted @ 2018-08-19 09:09 地瓜来了 阅读(143) 评论(0) 推荐(0) 编辑