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 Nonepara 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 Nonepara 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)

 
