枚举 — GateType, OpType, NoiseOpType, PIC_TYPE
pyqpanda3 核心枚举类型的 API 参考。
GateType
所有量子门类型的枚举。用于 QGate.gate_type()、噪声模型配置和转译。
值
| 值 | 说明 |
|---|---|
GATE_NOP | 无操作(恒等占位符) |
GATE_UNDEFINED | 未定义门类型 |
I | 恒等门 |
X | 泡利-X(NOT)门 |
Y | 泡利-Y 门 |
Z | 泡利-Z 门 |
X1 | SX 门( |
Y1 | Y1 门( |
Z1 | Z1 门( |
H | Hadamard 门 |
T | T 门( |
S | S 门(相位门) |
P | 参数化相位门 |
RX | 绕 X 轴旋转 |
RY | 绕 Y 轴旋转 |
RZ | 绕 Z 轴旋转 |
RPHI | R-Phi 门 |
U1 | U1 门(单参数) |
U2 | U2 门(双参数) |
U3 | U3 门(三参数) |
U4 | U4 门(四参数) |
CU | 受控 U 门 |
CNOT | 受控非门 |
CZ | 受控 Z 门 |
CP | 受控相位门 |
CRX | 受控 RX 门 |
CRY | 受控 RY 门 |
CRZ | 受控 RZ 门 |
RYY | YY 旋转门 |
RXX | XX 旋转门 |
RZZ | ZZ 旋转门 |
RZX | ZX 旋转门 |
ISWAP | iSWAP 门 |
SQISWAP | 平方根 iSWAP 门 |
SWAP | SWAP 门 |
IDLE | IDLE(无操作)门 |
ECHO | Echo 门 |
ORACLE | Oracle(用户自定义幺正)门 |
TOFFOLI | Toffoli(CCNOT)门 |
BARRIER | 屏障操作 |
RESET | 原生重置信道:将量子比特坍缩到 |
MS | Molmer-Sorensen 门 |
示例
python
from pyqpanda3.core import H, GateType
gate = H(0)
print(gate.gate_type()) # GateType.H运行结果:
GateType.HOpType
量子程序中操作类型的枚举。
值
| 值 | 说明 |
|---|---|
Gate | 量子门操作 |
Measure | 测量操作 |
注意:
Gate和Measure是pyqpanda3.core.__init__中导出的别名:
Gate = OpType.GateMeasure = OpType.Measure检查操作类型时可以使用这些简写别名。
示例
python
from pyqpanda3.core import H, OpType
gate = H(0)
print(gate.m_operation_type) # OpType.Gate运行结果:
OpType.GateNoiseOpType
噪声模型机制中使用的噪声操作类型枚举。
值
| 值 | 说明 |
|---|---|
KARUS_MATRIICES | 以一组 Kraus 矩阵表示的噪声 |
NOISE | 通用噪声通道标记 |
注意: 成员名
KARUS_MATRIICES沿用底层 C++ 绑定中暴露的拼写。
示例
python
from pyqpanda3.core import NoiseOpType
print(NoiseOpType.KARUS_MATRIICES)
print(NoiseOpType.NOISE)运行结果:
NoiseOpType.KARUS_MATRIICES
NoiseOpType.NOISEPIC_TYPE
线路可视化输出格式的枚举。
值
| 值 | 说明 |
|---|---|
TEXT | ASCII 文本可视化 |
LATEX | LaTeX 源码线路图(目前暂不支持,回退为 TEXT 输出) |
示例
python
from pyqpanda3.core import draw_qprog, QProg, H, CNOT, PIC_TYPE
prog = QProg()
prog << H(0) << CNOT(0, 1)
# Text visualization
text_output = draw_qprog(prog, PIC_TYPE.TEXT)
print(text_output)运行结果:
┌─┐
q_0: |0>─┤H├ ───*──
└─┘ ┌──┴─┐
q_1: |0>──── ┤CNOT├
└────┘
c : / ═══════════另见
- 量子门 — 所有量子门函数
- 噪声 — 使用 GateType 的 NoiseModel
- 可视化 — draw_qprog 函数
set_print_options
配置量子线路和程序文本输出的全局打印选项。影响线路图在打印或转换为字符串时的渲染方式。
签名
python
set_print_options(precision: int = 8, param_show: int = True, linewidth: int = 100) -> None参数
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| precision | int | 8 | 输出中参数值的浮点精度 |
| param_show | int | True | 是否在线路输出中显示门参数(True 或 False) |
| linewidth | int | 100 | 每行最大字符数 |
示例
python
from pyqpanda3.core import set_print_options, QCircuit, H, RX
# Set compact output with 4-digit precision
set_print_options(precision=4, linewidth=60)
circ = QCircuit()
circ << H(0) << RX(1, 0.123456789)
print(circ)运行结果:
┌─┐
q_0: |0>─┤H├─────────
├─┴────────┐
q_1: |0>─┤RX(0.1235)├
└──────────┘
c : / ═════════════