在实现量子电路时,我创建了一个单独的 Python 文件用于数值计算。现在,我尝试使用 IBM Quantum Lab 将此代码应用到使用 Qiskit 的电路中。
%matplotlib inline
import math
import decomposition_2qubit as d2
import numpy as np
from qiskit import QuantumCircuit, execute, Aer
from qiskit.visualization import plot_histogram
from qiskit.extensions import *
from qiskit.quantum_info import Statevector
matrix = (1/2)*np.array([
[1,1,1,1],
[1,-1,1,-1],
[1,1,-1,-1],
[1,-1,-1,1]])
qc = QuantumCircuit(2,2)
#qc.x(0)
#qc.x(1)
qc.barrier()
d2.twoqubit_to_single(qc, matrix)
ket = Statevector(qc)
ket.draw('latex')
qc.draw('mpl')
但是,当我尝试导入decomposition_2qubit.py 文件时,遇到此错误。我该如何解决这个问题?
Traceback (most recent call last):
Cell In[1], line 4
import decomposition_2qubit as d2
ModuleNotFoundError: No module named 'decomposition_2qubit'
Use %tb to get the full traceback.
我的“decomposition_2qubit.py”文件与我当前使用的 Jupyter Notebook 文件位于同一文件夹中。另外,由于IBM Quantum Lab似乎使用Jupyter Notebook作为基础,因此我在Jupyter Notebook中遇到此类错误时尝试寻找解决方案,但不幸的是,我无法解决该问题。
您可能面临文件路径问题。正如here所建议的,您可以显式指定自己的导入路径,也可以仅在前面添加路径修饰符,例如 $..$ 和/或 $/$.