- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 python yield from的使用
yield from 可用于简化 for 循环中的 yield 表达式。yield from x 表达式对 x 对象操作调用 iter(x),从中获取迭代器。因此,x 可以是任何可迭代的对象。def chain(*its): for it in its: yield from itlist(chain(['a', 'b', 'c', 'd'], range(5), ['hel
2017-09-30 18:02:42 525
原创 python 协程
yield 关键字可以在表达式中使用, 而且生成器 API 中增加了 .send(value) 方法。 生成器的调用方可以使用 .send(...) 方法发送数据, 发送的数据会成为生成器函数中 yield 表达式的值。 因此, 生成器可以作为协程使用。 协程是指一个过程, 这个过程与调用方协作, 产出由调用方提供的值协程有四个状态:可以使用inspect.getgeneratorstat
2017-09-30 11:41:12 393 1
原创 python else在for、while、try 语句中使用
for仅当 for 循环运行完毕时( 即 for 循环没有被 break 语句中止)才运行 else 块。>>> for i in range(10):... print i... else:... print 'end'... 0123456789end>>> >>> >>> for i in range(10):... if
2017-09-26 11:05:28 2785
翻译 python iter函数特殊用法
Python 中迭代对象时会调用 iter(x)。iter 函数还有一个鲜为人知的用法: 传入两个参数, 使用常规的函数或任何可调用的对象创建迭代器。第一个参数必须是可调用的对象,用于不断调用(没有参数),产出各个值。第二个值是哨符,这是个标记值, 当可调用的对象返回这个值时, 触发迭代器抛出 StopIteration 异常,而不产出哨符。from random import
2017-09-25 19:04:33 2098 1
原创 报错 [Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the paren
有时候
2017-09-21 19:24:49 19980
翻译 python 生成器函数
Python 函数的定义体中有 yield 关键字, 该函数就是生成器函数。 调用生成器函数时, 会返回一个生成器对象。生成器函数的定义体执行完毕后, 生成器对象会抛出StopIteration 异常。def gen_A(): print('start') yield 1 print('starting') yield 2 print('starting') yield 3 pr
2017-09-08 16:34:56 587
翻译 python 可迭代对象与迭代器
可迭代的对象使用 iter 内置函数可以获取迭代器的对象。 如果对象实现了能返回迭代器的 __iter__ 方法, 那么对象就是可迭代的。序列都可以迭代; 实现了 __getitem__ 方法, 而且其参数是从零开始的索引, 这种对象也可以迭代。迭代器迭代器要实现 __next__ 方法,返回单个元素,如果没有元素了, 那么抛出 StopIteration 异常。 此外还要实现__
2017-09-07 11:26:01 316
原创 vim操作笔记
删除以#开头% s@^#.*@@g替换多空格成但空格% s@\s\+@ @g刪除沒有內容的空行g/^$/d删除#后面的内容% s@\(.*\)#.*@\1@g
2017-09-06 14:59:27 152
转载 众多中缀运算符的调用机制
中缀运算符正向方法返回NotImplemented,调用反向方法,反向方法返回NotImplemented,使用后备机制及后备机制。
2017-09-05 18:00:37 297
原创 gstack 查看进程运行堆栈信息
需求:php某进程一直卡着在running,找不到具体原因安装pstack是gdb的一部分,如果系统没有pstack命令,使用yum搜索安装gdb即可yum install gdb -y使用
2017-09-04 11:33:20 11753
原创 python __add__和__radd__
+ 号运算符号,通常我们用来重载一些实例之间的添加操作,这里讲述一下__add__和__radd__的运算解析流程class A: def __add__(self, other): print("A __add__") def __radd__(self, other): print("A __radd__") class B: pass>>> a = A()
2017-09-04 10:59:23 25045 4
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人