3.8.2. name 属性について¶
PySIMPLE では,宣言時に name 属性を与えない 集合クラス Set, 添字クラス Element, 定数クラス Parameter, 変数クラス Variable の name 属性を自動判別します. 判別に失敗した場合クラス名となります.:
i = Element(value=[1,2])
x = Variable(index=i)
print(x)
print(Variable(index=i))
この出力は次のようになります.:
x:
x[1]
x[2]
Variable:
Variable[1]
Variable[2]
また,インタプリタでは必ず判別に失敗しますので name 属性を与えた方が良いでしょう.:
>>> i = Element(value=[1,2])
>>> x = Variable(index=i)
>>> x
Variable:
Variable[1]
Variable[2]
>>> y = Variable(index=i, name='y')
>>> y
y:
y[1]
y[2]
式 クラス, 制約式クラス Constraint などの name 属性は構成要素から自動で与えられます. 明示的に与える場合は name 属性を変更します.:
i = Element(value=[1, 2])
a = Parameter(index=i, value=3)
x = Variable(index=i)
ax = a[i] + x[i]
print(ax)
ax.name = 'ax'
print(ax)
出力:
(a[i]+x[i]):
x[1]+3
x[2]+3
ax:
x[1]+3
x[2]+3