<p>我使用的是一个庞大的系统,所以我无法对功能进行任何更改</p>
<p>我的目标是使用某个参数(产生/返回结果)运行x函数,然后使用不同的参数(产生/返回第二个结果)运行x函数。最好比我现在拥有的解决方案要短一些</p>
<p>我尝试使用zip(),但获取元组时没有属性错误。我知道C在迭代时有一个concat函数</p>
<pre><code>def function():
# returns "1 2 3"
for x in pdm.function(param1):
yield {
x.info1
# more info 2 -7
x.info8
}
# returns "a"
for x in pdm.function(param2):
yield {
x.info1
# more info 2 -7
x.info8
}
</code></pre>
<p>这将返回我需要的“123A”,但很长,我想学习如何更好地迭代它</p>
<p>我不能执行<code>for x, y in pdm.function(param1):</code>,因为它们需要有不同的参数</p>
<p>我知道我也可以遵循干,使内部功能。这将使我的行数减少一半,但也会在现有的庞大代码库中添加另一个函数:</p>
<pre><code>def printwords(x):
yield {
x.info1
# more info 2 -7
x.info8
}
</code></pre>
<p>理想情况下,如果存在这样的连接,这将是我要寻找的答案:</p>
<pre><code>for x in pdm.function(param1) and x in pdm.function(param2):
yield {
x.info1
# more info 2 -7
x.info8
}
</code></pre>
<p>谢谢大家!</p>