Ámbito de una variable
Última actualización: 2025-02-28 | Mejora esta página
Tiempo estimado: 20 minutos
Hoja de ruta
Preguntas
- ¿Cómo funcionan realmente las llamadas a funciones?
- ¿Cómo puedo determinar dónde se han producido los errores?
Objetivos
- Identifica las variables locales y globales.
- Identifica parámetros como variables locales.
- Lee un traceback y determina el archivo, función y número de línea en el que ocurrió el error, el tipo de error y el mensaje de error.
El ámbito de una variable es la parte de un programa que puede ‘ver’ esa variable.
- Hay un número limitado de nombres sensatos para las variables.
- La gente que usa funciones no debería tener que preocuparse de qué nombres de variables usó el autor de la función.
- La gente que escribe funciones no debería preocuparse por los nombres de las variables que usa el invocador de la función.
- La parte de un programa en la que una variable es visible se llama su ámbito.
-
pressurees una variable global.- Definida fuera de cualquier función particular.
- Visible en todas partes.
-
tytemperatureson variables locales enadjust.- Definida en la función.
- No visible en el programa principal.
- Recuerda: un parámetro de función es una variable a la que se le asigna automáticamente un valor cuando se llama a la función.
SALIDA
adjusted: 0.01238691049085659
ERROR
Traceback (most recent call last):
File "/Users/swcarpentry/foo.py", line 8, in <module>
print('temperature after call:', temperature)
NameError: name 'temperature' is not defined
Lectura de mensajes de error
Lee el traceback de abajo, e identifica lo siguiente:
- ¿Cuántos niveles tiene el traceback?
- ¿Cuál es el nombre del fichero donde se ha producido el error?
- ¿Cuál es el nombre de la función en la que se ha producido el error?
- ¿En qué número de línea de esta función se produjo el error?
- ¿Cuál es el tipo de error?
- ¿Cuál es el mensaje de error?
ERROR
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-2-e4c4cbafeeb5> in <module>()
1 import errors_02
----> 2 errors_02.print_friday_message()
/Users/ghopper/thesis/code/errors_02.py in print_friday_message()
13
14 def print_friday_message():
---> 15 print_message("Friday")
/Users/ghopper/thesis/code/errors_02.py in print_message(day)
9 "sunday": "Aw, the weekend is almost over."
10 }
---> 11 print(messages[day])
12
13
KeyError: 'Friday'
- Tres niveles.
errors_02.pyprint_message- Línea 11
-
KeyError. Estos errores se producen cuando intentamos buscar una clave que no existe (normalmente en una estructura de datos como un diccionario). Podemos encontrar más información sobreKeyErrory otras excepciones incorporadas en los Python docs. KeyError: 'Friday'
Puntos Clave
- El ámbito de una variable es la parte de un programa que puede ‘ver’ esa variable.