QasmQobj
class qiskit.qobj.QasmQobj(qobj_id=None, config=None, experiments=None, header=None)
Bases: object
An OpenQASM 2 Qobj.
Instantiate a new OpenQASM 2 Qobj Object.
Each OpenQASM 2 Qobj object is used to represent a single payload that will be passed to a Qiskit provider. It mirrors the Qobj the published Qobj specification for OpenQASM experiments.
The class qiskit.qobj.qasm_qobj.QasmQobj
is deprecated as of qiskit 1.2. It will be removed in the 2.0 release. The Qobj class and related functionality are part of the deprecated BackendV1 workflow, and no longer necessary for BackendV2. If a user workflow requires Qobj it likely relies on deprecated functionality and should be updated to use BackendV2.
Parameters
- qobj_id (str) – An identifier for the qobj
- config (QasmQobjRunConfig) – A config for the entire run
- header (QobjHeader) – A header for the entire run
- experiments (list) – A list of lists of
QasmQobjExperiment
objects representing an experiment
Methods
from_dict
classmethod from_dict(data)
Create a new QASMQobj object from a dictionary.
Parameters
data (dict) – A dictionary representing the QasmQobj to create. It will be in the same format as output by to_dict()
.
Returns
The QasmQobj from the input dictionary.
Return type
to_dict
to_dict()
Return a dictionary format representation of the OpenQASM 2 Qobj.
Note this dict is not in the json wire format expected by IBM and Qobj specification because complex numbers are still of type complex. Also, this may contain native numpy arrays. When serializing this output for use with IBM systems, you can leverage a json encoder that converts these as expected. For example:
import json
import numpy
class QobjEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, numpy.ndarray):
return obj.tolist()
if isinstance(obj, complex):
return (obj.real, obj.imag)
return json.JSONEncoder.default(self, obj)
json.dumps(qobj.to_dict(), cls=QobjEncoder)
Returns
A dictionary representation of the QasmQobj object
Return type