协同程序(coroutine)与线程(thread)差不多,也就是一条执行序列,拥有自己独立的栈、局部变量和指令指针,同时又与其他协同程序共享全局变量和其他大部分东西。从概念上讲线程与协同程序的主要区别在于,一个具有多个线程的程序可以同时运行几个线程,而协同程序却需要彼此协作地运行。就是说,一个具有 ...
分类:
其他好文 时间:
2016-07-19 18:27:05
阅读次数:
162
<--目录-->模块和模块的常用方法函数式编程yield三元运算Lambda表达式内置涵数常用模块【模块和模块的常用方法】至关重要的__init__.py#包一定要有这个__init__.py文件,他才是包,这样才能通过form包名
import模块名(.py文件名)来去引用这个包的某个模块的某个函数功..
分类:
编程语言 时间:
2016-07-19 14:00:59
阅读次数:
254
一个新的线程通过start()进入运行状态,在运行状态中可以进行yield()方法进行礼让,但是仍然可以进行,如果现在现场需要暂停的话,可以使用suspend(), sleep(),wait()方法。如果线程不要执行,通过通过stop()结束(如果run()方法执行完毕也表示结束),或者一个新的线程 ...
分类:
编程语言 时间:
2016-07-19 09:21:17
阅读次数:
195
译者:xidui原文: http://sahandsaba.com/understanding-asyncio-node-js-python-3-4.html 译者前言 如何用yield以及多路复用机制实现一个基于协程的异步事件框架? 现有的组件中yield from是如何工作的,值又是如何被传入y ...
分类:
编程语言 时间:
2016-07-17 13:00:24
阅读次数:
324
1、对比range和xrange的区别:>>>printrange(10)
[0,1,2,3,4,5,6,7,8,9]
>>>printxrange(10)
xrange(10)range()和xrange()的区别在于,range会在内存中创建所有指定的数字,而xrange不会立即创建,只有在迭代循环时,才去创建每个数组。这就类似于yield和ret..
分类:
编程语言 时间:
2016-07-17 02:37:14
阅读次数:
180
迭代器 可以写到for循环in后面的对象都是可迭代的,比如list,dict,字符串等。 print [fib_opt(i) for i in range(100)] 在算100的时候,前面99个还是要重新计算。重复计算了很多次。 yield 包含yield语句的函数会被编译成生成器。生成器是惰性求 ...
分类:
编程语言 时间:
2016-07-15 06:09:05
阅读次数:
213
if__name__==‘__main__‘:
deffunc():
printu"-------新的开始--------"
i=0
print‘---创建i=%d-----‘%i
i=yieldi
#第一次迭代next并没有执行该表达式,只是将yield后面的只返回了后面的值
#第二次迭代yield返回send所带的参数,向后直到遇到yield,然后返回后面的值
printu‘函..
分类:
编程语言 时间:
2016-07-14 19:34:02
阅读次数:
191
/**Thread类的常用方法:*1.run():当前线程执行的操作,要书写在run()中*2.start():启动线程并执行相应的run()*3.currentThread():获取当前的线程*4.getName():获取当前线程的名字*5.setName(Stringname):设置当前线程的名字*6.yield():释放当前线程对cpu的占用*7.join():在a线..
分类:
其他好文 时间:
2016-07-14 15:55:57
阅读次数:
107
一、生成器 二、字符串的格式化 ① % 方法 ② format方法 ...
分类:
其他好文 时间:
2016-07-12 00:00:29
阅读次数:
345
原文地址:http://dylanxu.iteye.com/blog/1322066 1、sleep() 使当前线程(即调用该方法的线程)暂停执行一段时间,让其他线程有机会继续执行,但它并不释放对象锁。 也就是说如果有synchronized同步快,其他线程仍然不能访问共享数据。注意该方法要捕捉异常 ...
分类:
编程语言 时间:
2016-07-07 12:24:10
阅读次数:
162