Thx
but is there any simpleir way, if using not class, but just struct (or
something like that, MATLAB equivalent for that one)?
Use this::
42
But perhaps using this (with a better name) would be more sensible
(according to readability)::
42
I'm thinking of rewriting some optimization solvers (non-smooth,
constrained, with (sub)gradients or patterns provided by user) to
Python and I don't know currently is it possible to easy convert
things like
prob = [];
prob.advanced.ralg.hs = 1 (so in this line all subfields are
generating automatically in MATLAB or Octave)
Perhaps something like this would be suitable::
.... def __getattr__(self, attr):
.... if hasattr(self, attr)
.... setattr(self, attr, Autocreating())
.... return getattr(self, attr)
....23
But this is perhaps not a good way because it's way too implicite.
I have huge amount of such lines, and implementing separate class for
each one is unreal.
You don't have to implement a separate class for *each one*. Use one
class for every attribute, you can reuse it. But perhaps something like
a dict is better for your purposes, anyways.
HTH,
Stargaming