Python yield的简单应用和理解
2018-02-10 21:13
337 查看
# coding=utf-8 from random import randint def rand_gen(aList): while len(aList) > 0: yield aList.pop(randint(0, len(aList)-1)) def counter(start_at=0): count = start_at while True: # 第一次val等于yield的返回值,随后因为while的存在yield没有返回值,yield返回None # 随后count被加一, yield再次有值可以返回 val = (yield count) if val is not None: count = val else: count += 1 for item in rand_gen(['rock', 'paper', 'scissors']): print item count = counter(5) print count.next() # 5 print count.next() # 6 print count.send(9) # 9 print count.next() # 10 print count.close() # None
相关文章推荐
- Python中yield的简单理解
- python的迭代器iterator和生成器generator(关键字yield)的简单理解
- python yield的简单理解
- Python yield的理解与简单测试
- Python 类与对象简单理解及总结
- python迭代器简单理解
- python中yield关键字怎么理解?
- python面向对象的简单应用
- 【Python】简单应用-xlwt库
- 简单理解Cookie及其应用
- python 简单爬虫之网页解析器 beautifusoup4插件应用
- 通过“生产者-消费者模型”理解Python协程和yield关键字
- leetcode 2. Add Two Numbers python实现的理解,结点,单链表的应用,大数,进位的问题
- python set 简单应用
- CSS简单理解与应用
- 转载:Java中关于三目运算符理解和简单应用.
- 迭代器就是重复地做一些事情,可以简单的理解为循环,在python中实现了__iter__方法的对象是可迭代的,实现了next()方法的对象是迭代器,这样说起来有
- 快速排序的简单应用及回调函数的初步理解
- 用Python实现fib数列的几个方法(yield的应用)
- 简单理解Python中的装饰器