QasmQobj#

class qiskit.qobj.QasmQobj(qobj_id=None, config=None, experiments=None, header=None)[ソース]#

ベースクラス: 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.

パラメータ:
  • 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

classmethod from_dict(data)[ソース]#

Create a new QASMQobj object from a dictionary.

パラメータ:

data (dict) – A dictionary representing the QasmQobj to create. It will be in the same format as output by to_dict().

戻り値:

The QasmQobj from the input dictionary.

戻り値の型:

QasmQobj

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)
戻り値:

A dictionary representation of the QasmQobj object

戻り値の型:

dict