qiskit.qpy.dump
dump(programs, file_obj, metadata_serializer=None)
Write QPY binary data to a file
This function is used to save a circuit to a file for later use or transfer between machines. The QPY format is backwards compatible and can be loaded with future versions of Qiskit.
For example:
from qiskit.circuit import QuantumCircuit
from qiskit import qpy
qc = QuantumCircuit(2, name='Bell', metadata={'test': True})
qc.h(0)
qc.cx(0, 1)
qc.measure_all()
from this you can write the qpy data to a file:
with open('bell.qpy', 'wb') as fd:
qpy.dump(qc, fd)
or a gzip compressed file:
import gzip
with gzip.open('bell.qpy.gz', 'wb') as fd:
qpy.dump(qc, fd)
Which will save the qpy serialized circuit to the provided file.
Parameters
- programs (
Union
[List
[Union
[QuantumCircuit
,ScheduleBlock
]],QuantumCircuit
,ScheduleBlock
]) – QPY supported object(s) to store in the specified file like object. QPY supportsQuantumCircuit
andScheduleBlock
. Different data types must be separately serialized. - file_obj (
BinaryIO
) – The file like object to write the QPY data too - metadata_serializer (
Optional
[Type
[JSONEncoder
]]) – An optional JSONEncoder class that will be passed the.metadata
attribute for each program inprograms
and will be used as thecls
kwarg on the json.dump()` call to JSON serialize that dictionary.
Raises
- QpyError – When multiple data format is mixed in the output.
- TypeError – When invalid data type is input.
Was this page helpful?
Report a bug or request content on GitHub.