# Driver(bpy_struct)

base class — `bpy_struct`

class `bpy.types.``Driver`(bpy_struct)

  Driver for the value of a setting based on an external value

  `expression`

    Expression to use for Scripted Expression

    Type: | string, default “”, (never None)

  `is_simple_expression`

    The scripted expression can be evaluated without using the full python interpreter

    Type: | boolean, default False, (readonly)

  `is_valid`

    Driver could not be evaluated in past, so should be skipped

    Type: | boolean, default False

  `type`

    Driver type

    Type: | enum in [‘AVERAGE’, ‘SUM’, ‘SCRIPTED’, ‘MIN’, ‘MAX’], default ‘AVERAGE’

  `use_self`

    Include a ‘self’ variable in the name-space, so drivers can easily reference the data being modified (object, bone, etc…)

    Type: | boolean, default False

  `variables`

    Properties acting as inputs for this driver

    Type: | `ChannelDriverVariables` `bpy_prop_collection` of `DriverVariable`, (readonly)

  classmethod `bl_rna_get_subclass`(id, default=None)

    Parameters: | id (string) – The RNA type identifier.
    Returns: | The RNA type or default when not found.
    Return type: | `bpy.types.Struct` subclass

  classmethod `bl_rna_get_subclass_py`(id, default=None)

    Parameters: | id (string) – The RNA type identifier.
    Returns: | The class or default when not found.
    Return type: | type

Inherited Properties

`bpy_struct.id_data` |

Inherited Functions

`bpy_struct.as_pointer` `bpy_struct.driver_add` `bpy_struct.driver_remove` `bpy_struct.get` `bpy_struct.is_property_hidden` `bpy_struct.is_property_overridable_library` `bpy_struct.is_property_readonly` `bpy_struct.is_property_set` `bpy_struct.items` `bpy_struct.keyframe_delete` | `bpy_struct.keyframe_insert` `bpy_struct.keys` `bpy_struct.path_from_id` `bpy_struct.path_resolve` `bpy_struct.pop` `bpy_struct.property_overridable_library_set` `bpy_struct.property_unset` `bpy_struct.type_recast` `bpy_struct.values`

References

`FCurve.driver` |