OpenSesame
Rapunzel Code Editor
DataMatrix
Support forum
Python Tutorials
MindProbe
Supported by

Acceso a variables experimentales

instancia var

Nuevo en 4.0.0: A partir de OpenSesame 4.0, todas las variables experimentales también están disponibles en el espacio de trabajo de Python. Esto significa que, por lo tanto, no necesitas más el objeto var.

El objeto var proporciona acceso a las variables experimentales. Las variables experimentales son las variables que viven en la GUI y están configuradas comúnmente como variables independientes en el elemento loop, referenciadas mediante la notación de llaves ({my_variable}), y registradas por el ítem logger.

Se crea automáticamente un objeto var cuando comienza el experimento. Además de las funciones que se detallan a continuación, se admiten las siguientes semánticas:

Ejemplo:

# Establecer una variable experimental
var.my_variable = u'my_value'
# Obtener una variable experimental
print(u'Sujeto nr = %d' % var.subject_nr)
# Borrar (deshacer) una variable experimental
del var.my_variable
# Verificar si existe una variable experimental
if
u'my_variable' in var:
    print(u'¡my_variable existe!')
# Recorrer todas
las variables experimentales
for var_name in var:
        print(u'variable encontrada:
%s' % var_name)

clear(preserve=[])

Nuevo en 3.1.2

Limpia todas las variables experimentales.

Parámetros

  • preserve: Una lista de nombres de variables que no deben borrarse.

Ejemplo

var.clear()

get(var, default=None, _eval=True, valid=None)

Obtiene una variable experimental.

Parámetros

  • var: La variable a obtener.
  • default: Un valor por defecto en caso de que la variable no exista o None para sin valor por defecto.
  • _eval: Determina si la variable devuelta debe ser evaluada para referencias de variables.
  • valid: Una lista de valores válidos, o None para permitir todos los valores.

Ejemplo

print('my_variable = %s' % var.get(u'my_variable'))
# Equivalente a:
print('my_variable = %s' % var.my_variable)
# Pero si desea pasar argumentos de palabras clave, debe usar `get()`:
var.get(u'my_variable', default=u'a_default_value')

has(var)

Verifica si existe una variable experimental.

Parámetros

  • var: La variable a comprobar.

Ejemplo

if var.has(u'my_variable'):
        print(u'¡my_variable ha sido definida!')
# Equivalente a:
if u'my_variable' in var:
        print(u'¡my_variable ha sido definida!')

inspect(self)

Genera una descripción de todas las variables experimentales, tanto vivas como hipotéticas.

Devoluciones

  • Un diccionario donde los nombres de las variables son claves y los valores son diccionarios con claves de fuente, valor y vida.

items(self)

Devuelve una lista de tuplas (nombre_variable, valor). Vea var.vars() para obtener información sobre la no exhaustividad de esta función.

Devoluciones

  • Una lista de tuplas (nombre_variable, valor).

Ejemplo

for varname, value in var.items():
        print(varname, value)

set(var, val)

Establece una variable experimental.

Parámetros

  • var: La variable a asignar.
  • val: El valor a asignar.

Ejemplo

var.set(u'my_variable', u'my_value')
# Equivalente a
var.my_variable = u'my_value'

unset(var)

Elimina una variable.

Parámetros

  • var: La variable a eliminar.

Ejemplo

var.unset(u'my_variable')
# Equivalente a:
del var.my_variable

vars(self)

Devuelve una lista de variables experimentales. Debido a que las variables experimentales pueden almacenarse en varios lugares, esta lista puede no ser exhaustiva. Es decir, u'my_var' in var puede devolver True, mientras u'my_var' no está en la lista de variables devueltas por esta función.

Devoluciones

  • Una lista de nombres de variables.

Ejemplo

for varname in var.vars():
        print(varname)
Supported by