บันทึกวงจรลงดิสก์
เวอร์ชันของแพ็กเกจ
โค้ดในหน้านี้พัฒนาโดยใช้ข้อกำหนดต่อไปนี้ แนะนำให้ใช้เวอร์ชันเหล่านี้หรือใหม่กว่า
qiskit[all]~=2.5.2
ใช้ QPY serialization เพื่อบันทึก Circuit ของคุณลงไฟล์ ไฟล์ QPY จัดเก็บออบเจ็กต์ Qiskit Circuit แบบเต็มรูปแบบและจะเข้ากันได้กับ Qiskit เวอร์ชันใหม่กว่า (แม้ว่าอาจไม่เข้ากันได้กับ Qiskit เวอร์ชันเก่ากว่าก็ตาม)
เพื่อสาธิต เซลล์ต่อไปนี้จะสร้างวงจรควอนตัมอย่างง่าย
# Added by doQumentation — installs the packages this notebook needs if they are missing
import importlib.util
_needed = {"qiskit": "qiskit"}
_missing = [pip for module, pip in _needed.items()
if importlib.util.find_spec(module) is None]
# One at a time, so a package that fails to install does not block the others
for _pip in _missing:
%pip install -q {_pip}
if not _missing:
print("\u2713 All required packages are installed")
from qiskit import QuantumCircuit
qc = QuantumCircuit(2)
qc.h(0)
qc.cx(0, 1)
qc.measure_all()
หากต้องการบันทึกไฟล์นี้ลงดิสก์ ใช้ฟังก์ชัน qpy.dump คุณยังสามารถบันทึกรายการของ Circuit ได้ด้วย
from qiskit import qpy
with open("test.qpy", "wb") as file:
qpy.dump(qc, file)
ตอนนี้ Circuit นี้ถูกบันทึกลงไฟล์ test.qpy แล้ว หากคุณรีสตาร์ท Python kernel คุณสามารถโหลด Circuit ใหม่ได้โดยใช้ฟังก์ชัน qpy.load โปรดสังเกตว่าฟังก์ชันนี้จะคืนค่าเป็นรายการของ Circuit เสมอ แม้ว่าคุณจะ serialize เพียง Circuit เดียว
with open("test.qpy", "rb") as handle:
qc = qpy.load(handle)
qc[0].draw("mpl")