输出输入生成器的结果,然后输出生成器结果的翻译结果

问题描述 投票:0回答:1

以下代码:

def test(x):
    for i in x:
        yield i
        i = list(i)
        i[1] = "X"
        yield tuple(i)

list(test(it.product(["A", "B"], ["C"])))

输出以下列表:

[('A', 'C'), ('A', 'X'), ('B', 'C'), ('B', 'X')]

我如何调整该函数,以便首先列出输入生成器结果,然后列出翻译结果?

所以:

[('A', 'C'), ('B', 'C'), ('A', 'X'), ('B', 'X')]
python generator python-itertools
1个回答
0
投票
def test(x):
    x = list(x)
    yield from x
    for i in x:
        i = list(i)
        i[1] = "X"
        yield tuple(i)
© www.soinside.com 2019 - 2024. All rights reserved.