ParameterVector
class qiskit.circuit.ParameterVector(name, length=0)
ベース: object
多くの関連オブジェクトのコンテナ。 Parameter オブジェクト。
このクラスは Parameter オブジェクトを個別に構築するよりも高速に構築でき、パラメータの個々の名前はすべて共通の語幹(ベクトルの名前)を共有します。 長さ3の v というベクトルの場合、個々の要素には v[0]、 v[1] 、 v[2] という名前が付けられる。
ベクトルの要素は、ベクトルの名前、そしてインデックスの数値の順にソートされる。
このクラスは、その collections.abc.Sequence インターフェースを実装しています。
属性
name
の名前は ParameterVector.
params
含まれる ParameterVectorElement インスタンスのリスト。
このリストを変異させるのは安全ではない。
方法
index
index(value)
リスト内の ParameterVectorElement のインデックスを見つける。
通常 ParameterVectorElement.index プロパティを使う方がはるかに高速です。
resize
resize(length)
パラメータ・ベクトルのサイズを変更する。 必要であれば、新しいエレメントが生成される。
各 Parameter 要素のUUIDは、 ParameterVector のルートUUIDと要素のインデックスが与えられれば、決定論的に生成されることに注意してください。 特に、 ParameterVector 、小さくリサイズされ、その後大きくリサイズされた場合、あるインデックスで後から生成された要素のUUIDは、そのインデックスで前の要素のUUIDと同じになる。 これは、パラメータのインスタンスが変化しないようにするためである。
>>> from qiskit.circuit import ParameterVector
>>> pv = ParameterVector("theta", 20)
>>> elt_19 = pv[19]
>>> pv.resize(10)
>>> pv.resize(20)
>>> pv[19] == elt_19
True