【发布时间】:2021-05-23 02:45:00
【问题描述】:
假设我有以下命令(使用 Python 和 Qiskit):
a = reduce(lambda x,y: x.compose(y,c),circli, qcla)
(qcla 是一个初始化器)
这里,compose 是一个内部 qiskit 函数,x 和 y 是列表 circli(可迭代)的元素。我想知道我是否可以在这个 reduce 函数中添加另一个迭代?这里,c 本身在(y,c) 中代表一个坐标,比如[2,3],我希望它也能更新。我可以创建另一个包含所有可能的c 的列表并将其添加为另一个可迭代对象吗?谢谢!
【问题讨论】:
-
减少并不是什么灵丹妙药。它采用一系列对象并通过累积结果重复执行二进制操作:
{1, 2, 3; +} -> 1 + (2 + 3) -> 1 + 5 -> 6。compose函数能够使用两个可迭代序列来做到这一点是否有意义?在我看来不像。 “希望也更新”是什么意思?你能举一个输入和输出的例子吗?根据您要执行的具体操作,可以定义一个执行您想要的功能的函数,但这可能不值得。 -
@blorgon 非常感谢您的评论!我想我的问题是我是否可以在使用
reduce函数时以不同的方式调用相同的函数compose。compose函数接受一个“坐标”参数,所以我想知道这个函数在reduce的简单情况下是否有类似的用法,如“+”、“*”。 -
你能想出一个输入和期望输出的例子吗?
标签: python lambda reduce qiskit