在Python中,如何将变量从一个生成器传递到另一个生成器?
我有以下两台发电机:在Python中,如何将变量从一个生成器传递到另一个生成器?,python,Python,我有以下两台发电机: a = 20 def function1(): coin = np.random.randint(0, 100) a2= a+coin yield a2 def function2(): yield a2 我想将a2传递到function2。我怎样才能做到这一点呢?我不能完全确定这是否是您要寻找的,但是生成器有一个名为“发送”的方法,可以让您将数据传递给生成器。 你可能想看看这个。注意“消费”和“生产”的功能 这些函数没有意义。如果它
a = 20
def function1():
coin = np.random.randint(0, 100)
a2= a+coin
yield a2
def function2():
yield a2
我想将
a2
传递到function2
。我怎样才能做到这一点呢?我不能完全确定这是否是您要寻找的,但是生成器有一个名为“发送”的方法,可以让您将数据传递给生成器。
你可能想看看这个。注意“消费”和“生产”的功能 这些函数没有意义。如果它们只产生一个值,为什么它们是生成器呢?为什么不编写常规函数呢?通常,生成器用于“生成”多个值,即包含某种循环。只有一个
yield
不能利用生成器。你想在这里解决什么问题?迈克,这是我的问题。看第26行。在这种情况下,图像和掩码生成器就是我试图创建的(即function1
和function2
)。问题是我的函数1(即图像生成器)调用了随机采样选择,其中该随机选择的值也必须应用于函数2(即第二个生成器“掩码”)。注意,我正在创建自己的图像和掩码生成器,而不是使用gist代码中定义的生成器。现在还不清楚生成器最终是如何使用的。请试着发一封邮件。