python - 我怎样才能为这个函数写一个递归?
问题描述
我怎样才能为这个函数写一个递归?
def randomWord(args):
yield random.choice(args)
list = ['book', 'apple', 'word']
books = randomWord(list)
print(next(books))
print(next(books))
print(next(books))
print(next(books))
print(next(books))
在每个print(next(books))
我需要从list
解决方案
从 Python 3.3 开始,您可以只使用yield from
关键字。
def randomWord(args):
yield random.choice(args)
yield from randomWord(args)
list = ['book', 'apple', 'word']
books = randomWord(list)
print(next(books))
print(next(books))
print(next(books))
print(next(books))
print(next(books))
推荐阅读
- java - 使用 Java DSL 将端点动态添加到骆驼上下文
- python - 从列表的每一行截断/修剪日期和时间
- reporting-services - SSRS 数据隐藏在屏幕上,但在导出为 PDF 时可见
- asp.net - 如何自动开启 IIS
- c# - 当 URL 包含缩略图时,应排除 Blob 触发器绑定
- python - 证书验证失败的谷歌 API
- cordova - (节点:8828)UnhandledPromiseRejectionWarning:CordovaError:JDK 1.8 或更高版本的要求检查失败
- amazon-web-services - AWS S3 - 配置网站访问
- racket - 在球拍中编写词法分析器 - 包含指令有问题
- amazon-web-services - 使用分区键和特定排序键列表查询 DynamoDB