首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >生成器函数Python 2中的返回值

生成器函数Python 2中的返回值
EN

Stack Overflow用户
提问于 2016-09-27 21:43:01
回答 1查看 901关注 0票数 0

我想知道如何编写一个生成器函数,它也有返回值的选项。在Python 2中,如果生成器函数试图返回值,则会得到以下错误消息。SyntaxError: 'return' with argument inside generator

是否可以在指定是否要接收生成器的情况下编写函数?

例如:

代码语言:javascript
运行
复制
def f(generator=False):
    if generator:
        yield 3
    else:
        return 3
EN

回答 1

Stack Overflow用户

发布于 2016-09-27 22:01:12

强制性阅读:Understanding Generators in Python

关键信息:

函数中的任何一个yield都使它成为一个生成器。

函数在分析代码时被标记为生成器。因此,根据运行时传递的参数切换函数行为(生成器/非生成器)是不可能的。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39734786

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档