InputParameterSelectionList
- class pydsol.core.parameters.InputParameterSelectionList(key: str, name: str, options: List[str], default_value: str, display_priority: float, *, parent: InputParameterMap | None = None, description: str | None = None, read_only: bool = False)[source]
Bases:
InputParameter
InputParameterSelectionList defines a string input parameter that has to be a member of a provided list of strings. In a user interface, this can be indicated as a pick list. An example is a list of the state codes of the USA.
The InputParameterSelectionList has all attributes of the InputParameter. The _value attribute is of the type str. It also has the following extra attributes:
- Attributes:
_options (list[str]) – The values that can be entered for this parameter.
- __init__(key: str, name: str, options: List[str], default_value: str, display_priority: float, *, parent: InputParameterMap | None = None, description: str | None = None, read_only: bool = False)[source]
Create a new InputParameterSelectionList that can contain a string input value for the simulation model. The vaue of the string is limited to the options in the provided selection list.
- Parameters:
key (str) – The key of the parameter that can be a part of the dot-notation to uniquely identify the model parameter. The key does not contain the name of the parent, and should not contain any periods. It should also be unique within its node of the input parameter tree. The key is set at time of construction and it is immutable.
name (str) – Concise description of the input parameter, which can be used in a GUI to identify the parameter to the user.
options (list[str]) – The list with values that can be entered for this parameter.
default_value (str) – The default (initial) value of the parameter. This value has to be a member of the options list.
display_priority (Union[int, float]) – A number indicating the order of display of the parameter in the parent parameter map. Floats are allowed to make it easy to insert an extra parameter between parameters that have already been allocated subsequent integer values.
parent (InputParameterMap (optional)) – The parent map in which the parameter can be retrieved using its key. Typically, only the root InputParameterMap has no parent, and all other parameters have an InputParameterMap as parent.
description (str (optional)) – A description or explanation of the InputParameter. For instance, an indication of the bounds or the type. This value is purely there for the user interface.
read_only (bool (optional)) – Whether a user is prohibited from changing the value of the parameter or not (default false, so the parameter can be changed).
- Raises:
TypeError – when key is not a string
ValueError – when key is an empty string, or key contains a period
ValueError – when key is not unique in the parent InputParameterMap
TypeError – when name is not a string
ValueError – when name is an empty string
TypeError – when display priority is not a number
TypeError – when parent is not an InputParametermap or None
TypeError – when read_only is not a bool
TypeError – when default_value is not a string
TypeError – when options is not a list
TypeError – when options contains entries that are not a string
ValueError – when default_value is not one of the options in the list
- property value: str
Returns the actual value of the parameter. The value is initialized with default_value and is updated based on user input or data input.
- Returns:
The actual value of the parameter, one of the elements of the list.
- Return type:
str
- property options: str
Returns the list of allowed values for the parameter.
- Returns:
The list with allowed values for the parameter.
- Return type:
list[str]
- set_value(value: str)[source]
Set (overwrite) the actual value of the parameter.
- Parameters:
value (str) – The new value of the parameter.
- Raises:
ValueError – if the parameter is read-only
TypeError – if the new value is not a string
ValueError – if the new value is not defined in the options list
- property default_value: object
Returns the default (initial) value of the parameter. The actual return type will be defined in subclasses of InputParameter. The default value is immutable.
- Returns:
The default (initial) value of the parameter.
- Return type:
object
- property description: str
Returns a description or explanation of the InputParameter. For instance, an indication of the bounds or the type. This value is purely there for the user interface.
- Returns:
A description or explanation of the InputParameter.
- Return type:
str
- property display_priority: float
Return the number indicating the order of display of the parameter in the parent parameter map. Floats make it easy to insert an extra parameter between parameters that have already been allocated subsequent integer values.
- Returns:
The number indicating the order of display of the parameter in the parent parameter map.
- Return type:
float
- extended_key()
Return the extended key of this InputParameter including parents with a dot-notation. The name of this parameter is the last entry in the dot notation.
- Returns:
The extended key of this InputParameter including parents with a dot-notation.
- Return type:
str
- property key: str
Return the key of the parameter that can be a part of the dot-notation to uniquely identify the model parameter. The key does not contain the name of the parent. The key is set at time of construction and it is immutable.
- Returns:
The key of the parameter that can be a part of the dot-notation to uniquely identify the model parameter.
- Return type:
str
- property name: str
Returns the concise description of the input parameter, which can be used in a GUI to identify the parameter to the user.
- Returns:
The concise description of the input parameter, which can be used in a GUI to identify the parameter to the user.
- Return type:
str
- property parent: InputParameterMap
Return the parent map in which the parameter can be retrieved using its key. Typically, only the root InputParameterMap has no parent, and all other parameters have an InputParameterMap as parent.
- Returns:
the parent map in which the parameter can be retrieved using its key.
- Return type:
- property read_only: bool
Return whether a user is prohibited from changing the value of the parameter or not.
- Returns:
Whether a user is prohibited from changing the value of the parameter or not.
- Return type:
bool