python协程用法实例分析

yipeiwu_com6年前Python基础

本文实例讲述了python协程用法。分享给大家供大家参考。具体如下:

把函数编写为一个任务,从而能处理发送给他的一系列输入,这种函数称为协程

def print_matchs(matchtext):
  print "looking for",matchtext
  while True:
    line = (yield)
    #用 yield语句并以表达式(yield)的形式创建协程
    if matchtext in line:
      print line
>>> matcher = print_matchs('python')
>>> matcher.next()
looking for python
>>> matcher.send('hello python')#看生成器那片,关于send()跟next()的区别
hello python
>>> matcher.send('test')
>>> matcher.send('python is cool')
python is cool
>>>matcher.close()

希望本文所述对大家的Python程序设计有所帮助。

相关文章

pygame实现贪吃蛇游戏(上)

pygame实现贪吃蛇游戏(上)

本文实例为大家分享了pygame贪吃蛇游戏的具体代码,供大家参考,具体内容如下 1.准备工作 我们已经初始化了一个400*400的界面,为方便看我们的游戏,我们先在界面上画40*40的格...

在Python中合并字典模块ChainMap的隐藏坑【推荐】

在Python中合并字典模块ChainMap的隐藏坑【推荐】

在Python中,当我们有两个字典需要合并的时候,可以使用字典的 update 方法,例如: a = {'a': 1, 'b': 2} b = {'x': 3, 'y': 4} a....

python 应用之Pycharm 新建模板默认添加编码格式-作者-时间等信息【推荐】

python 应用之Pycharm 新建模板默认添加编码格式-作者-时间等信息【推荐】

在pycharm使用过程中,对于每次新建文件的编码格式和关于代码编写者的一些个人信息快捷填写,方法如下: 1.打开pycharm,选择File-Settings(Ctrl + Alt +...

ORM Django 终端打印 SQL 语句实现解析

ORM Django 终端打印 SQL 语句实现解析

在 settings.py 中添加以下内容: LOGGING = { 'version': 1, 'disable_existing_loggers': False, '...

Python定时任务APScheduler的实例实例详解

APScheduler 支持三种调度任务:固定时间间隔,固定时间点(日期),Linux 下的 Crontab 命令。同时,它还支持异步执行、后台执行调度任务。 一、基本架构 触发器...