小编Eti*_* P.的帖子

如何从发电机中取出元组?最佳实践

我是一个新手程序员,我想创建一个生成器,它将返回两个值,我将在另一个函数中用作元组.

我不明白为什么tuple(function_1(a,b))回报((1, 2),),而tuple(function_2(a,b))会返回一个正确的元组.

我想知道这里发生了什么,最好的语法是什么,最终知道是否有可能从中检索元组function_1.

提前感谢您的任何解释!

>>> def function_1(a,b):
...     yield a,b
...
>>> def function_2(a,b):
...     yield a
...     yield b
...
>>> a = 1
>>> b = 2
>>>
>>> function_1(a,b)
<generator object function_1 at 0x1007931b0>
>>> function_2(a,b)
<generator object function_2 at 0x1007931f8>
>>> tuple(function_1(a,b))
((1, 2),)
>>> tuple(function_2(a,b))
(1, 2)
>>> for item in function_1(a,b):
...    print(item)
...
(1, 2)
>>> for item in function_2(a,b):
...    print(item)
...
1 …
Run Code Online (Sandbox Code Playgroud)

python syntax tuples generator

8
推荐指数
1
解决办法
1万
查看次数

标签 统计

generator ×1

python ×1

syntax ×1

tuples ×1