Parameters¶
- class audobject.Parameters(**kwargs)[source]¶
List of parameters.
- Parameters
**kwargs –
audobject.Parameter
objects
Examples
>>> # create parameter >>> foo = Parameter( ... value_type=str, ... description='foo', ... ) >>> # create list of parameters >>> params = Parameters(foo=foo) >>> # get / set parameter value >>> params.foo = 'bar' >>> params.foo 'bar' >>> # add another parameter to list >>> pi = Parameter( ... value_type=float, ... description='mathematical constant', ... value=3.14159265359, ... ) >>> params['pi'] = pi >>> print(params) Name Value Default Choices Description Version ---- ----- ------- ------- ----------- ------- foo bar None None foo None pi 3.14159265359 None None mathematical constant None >>> # convert to dictionary >>> params() {'foo': 'bar', 'pi': 3.14159265359}
arguments¶
- Parameters.arguments¶
Returns arguments that are serialized.
- Returns
Dictionary of arguments and their values.
- Raises
RuntimeError – if arguments are found that are not assigned to attributes of the same name
Examples
>>> import audobject.testing >>> o = audobject.testing.TestObject('test', point=(1, 1)) >>> o.arguments {'name': 'test', 'point': (1, 1)}
borrowed_arguments¶
- Parameters.borrowed_arguments¶
Returns borrowed arguments.
- Returns
Dictionary with borrowed arguments.
filter_by_version()¶
from_command_line()¶
id¶
- Parameters.id¶
Object identifier.
The ID of an object ID is created from its non-hidden arguments.
- Returns
object identifier
Examples
>>> class Foo(Object): ... def __init__(self, bar: str): ... self.bar = bar >>> foo1 = Foo('I am unique!') >>> foo1.id '893df240-babe-d796-cdf1-c436171b7a96' >>> foo2 = Foo('I am different!') >>> foo2.id '9303f2a5-bfc9-e5ff-0ffa-a9846e2d2190' >>> foo3 = Foo('I am unique!') >>> foo1.id == foo3.id True
is_loaded_from_dict¶
- Parameters.is_loaded_from_dict¶
Check if object was loaded from a dictionary.
Returns
True
if object was initialized from a dictionary, e.g. after loading it from a YAML file.- Returns
True
if object was loaded from a dictionary,otherwise
False
short_id¶
- Parameters.short_id¶
Short object identifier.
The short ID consists of eight characters and is created from its non-hidden arguments.
- Returns
short object identifier
Examples
>>> class Foo(Object): ... def __init__(self, bar: str): ... self.bar = bar >>> foo1 = Foo('I am unique!') >>> foo1.id '893df240-babe-d796-cdf1-c436171b7a96' >>> foo1.short_id '171b7a96' >>> foo2 = Foo('I am different!') >>> foo2.short_id '6e2d2190' >>> foo3 = Foo('I am unique!') >>> foo1.short_id == foo3.short_id True
to_command_line()¶
- Parameters.to_command_line(parser)[source]¶
Add parameters to command line parser.
Note
Command line arguments are named –<name>.
- Parameters
parser (
ArgumentParser
) – command line parser
to_dict()¶
- Parameters.to_dict(*, include_version=True, flatten=False, root=None)¶
Converts object to a dictionary.
Includes items from
audobject.Object.arguments
. If an argument has a resolver, its value is encoded. Usually, the object can be re-instantiated usingaudobject.Object.from_dict()
. However, ifflatten=True
, this is not possible.- Parameters
- Return type
Dict
[str
,Union
[bool
,datetime
,dict
,float
,int
,list
,None
,str
]]- Returns
dictionary that represent the object
Examples
>>> import audobject.testing >>> o = audobject.testing.TestObject('test', point=(1, 1)) >>> o.to_dict(include_version=False) {'$audobject.core.testing.TestObject': {'name': 'test', 'point': [1, 1]}} >>> o.to_dict(flatten=True) {'name': 'test', 'point.0': 1, 'point.1': 1}
to_path()¶
to_yaml()¶
to_yaml_s()¶
- Parameters.to_yaml_s(*, include_version=True)¶
Convert object to YAML string.
Examples
>>> import audobject.testing >>> o = audobject.testing.TestObject('test', point=(1, 1)) >>> print(o.to_yaml_s(include_version=False)) $audobject.core.testing.TestObject: name: test point: - 1 - 1
update()¶
- Parameters.update(other)¶
Update the dictionary with the key/value pairs from other.
- Parameters
other (
Dictionary
) – the other dictionary