Skip to content

OriginIR 转换

用于在量子程序(QProg)和 OriginIR 中间表示格式之间进行转换的 API 参考。

convert_originir_string_to_qprog

解析 OriginIR 指令集字符串并返回对应的量子程序。

签名

python
convert_originir_string_to_qprog(
    string: str,
) -> QProg

参数

参数类型描述
stringstr要转换的 OriginIR 指令集字符串。

返回值

转换后的 QProg 量子程序。

示例

python
from pyqpanda3.intermediate_compiler import convert_originir_string_to_qprog

ir_str = """
QINIT 2
CREG 2
H q[0]
CNOT q[0],q[1]
MEASURE q[0],c[0]
MEASURE q[1],c[1]
"""
prog = convert_originir_string_to_qprog(ir_str)

convert_originir_file_to_qprog

读取 OriginIR 文件并返回对应的量子程序。

签名

python
convert_originir_file_to_qprog(
    ir_filepath: str,
) -> QProg

参数

参数类型描述
ir_filepathstr包含 OriginIR 指令集文本的文件路径。

返回值

转换后的 QProg 量子程序。

示例

python
from pyqpanda3.intermediate_compiler import convert_originir_file_to_qprog

prog = convert_originir_file_to_qprog("/path/to/circuit.originir")

convert_qprog_to_originir

将量子程序转换为其 OriginIR 字符串表示。

签名

python
convert_qprog_to_originir(
    prog: QProg,
    precision: int = 8,
) -> str

参数

参数类型描述
progQProg要转换的量子程序。
precisionint浮点门参数的小数位数。必须是非负整数。默认为 8

返回值

表示量子程序的 OriginIR 指令集字符串。

示例

python
from pyqpanda3.intermediate_compiler import convert_qprog_to_originir
from pyqpanda3.core import QProg, H, CNOT

prog = QProg() << H(0) << CNOT(0, 1)
ir_str = convert_qprog_to_originir(prog, precision=6)
print(ir_str)

另见

Released under the MIT License.