Tamil
மொழிகள்
English
Bengali
French
German
Japanese
Korean
Portuguese
Spanish
Tamil

qiskit.qpy.dump

dump(programs, file_obj, metadata_serializer=None)[source]

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.

Deprecated since version 0.21.0: qiskit.qpy.interface.dump()'s argument circuits is deprecated as of qiskit-terra 0.21.0. It will be removed no earlier than 3 months after the release date. Instead, use the argument programs, which behaves identically.

Parameters
  • programs (Union[List[Union[QuantumCircuit, ScheduleBlock]], QuantumCircuit, ScheduleBlock]) -- QPY supported object(s) to store in the specified file like object. QPY supports QuantumCircuit and ScheduleBlock. 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 in programs and will be used as the cls 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.