You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When creating a collection of LpVariables using the class method dicts, using an index that is a list of tuples in order to emulate a matrix it only work when the name does not contain a '%'
What did you do?
i1 = list(range(10))
i2 = list('abcdefghij')
i3 = 'jan feb mar apr may jun jul aug sep oct'.split()
indices = [(a, b, c) for a in i1 for b in i2 for c in i3]
P = pl.LpVariable.dicts('P', indices=indices)
P[0, 'a', 'jan']
What did you expect to see?
I was expecting to see: P_(0, 'a', 'jan')
What did you see instead?
P_(0,'a','jan')
Which is a weird looking name
The text was updated successfully, but these errors were encountered:
I think their example is an issue with the github markdown formatting. The variable name is
In [7]: P[9,'j','oct'].name
Out[7]: "P_(9,_'j',_'oct')"
from this
In [1]: from pulp import *
In [2]: i1 = list(range(10))
...: i2 = list('abcdefghij')
...: i3 = 'jan feb mar apr may jun jul aug sep oct'.split()
...: indices = [(a, b, c) for a in i1 for b in i2 for c in i3]
...:
...: P = LpVariable.dicts('P', indices=indices)
In [3]: P
Out[3]:
{(0, 'a', 'jan'): P_(0,_'a',_'jan'),
(0, 'a', 'feb'): P_(0,_'a',_'feb'),
(0, 'a', 'mar'): P_(0,_'a',_'mar'),
(0, 'a', 'apr'): P_(0,_'a',_'apr'),
(0, 'a', 'may'): P_(0,_'a',_'may'),
Either a little more logic could be added to handle the construction of the variable names here :
Details for the issue
When creating a collection of LpVariables using the class method dicts, using an index that is a list of tuples in order to emulate a matrix it only work when the name does not contain a '%'
What did you do?
i1 = list(range(10))
i2 = list('abcdefghij')
i3 = 'jan feb mar apr may jun jul aug sep oct'.split()
indices = [(a, b, c) for a in i1 for b in i2 for c in i3]
P = pl.LpVariable.dicts('P', indices=indices)
P[0, 'a', 'jan']
What did you expect to see?
I was expecting to see: P_(0, 'a', 'jan')
What did you see instead?
P_(0,'a','jan')
Which is a weird looking name
The text was updated successfully, but these errors were encountered: