Python Tema2 Parte5 v3
Python Tema2 Parte5 v3
Conceptos básicos de
programación
Definición de variable
IBM SkillsBuild | Introducción a Python
Índice
Introducción 3
Tipos de datos 4
Tipos complejos 4
Declaración de variables 4
Constantes 5
Scope, ámbito 5
2
IBM SkillsBuild | Introducción a Python
Introducción
Como vimos en la lección anterior los siguientes tipos Son creados por el usuario a partir de estructuras del
de datos primitivos que poseen la mayoría de los lenguaje y/o agrupaciones de elementos de tipo
lenguajes de programación de alto nivel. simple. Así, es posible encontrar el tipo de dato
función (function), que permite asignar a una variable
Vamos a centrarnos en el lenguaje Javascript, que es
una función (las funciones se ven con posterioridad),
objeto de este curso.
y el tipo de dato objeto, que engloba un conjunto de
Más adelante veremos detalladamente los tipos de posibles tipos de datos (arrays o tablas, por ejemplo,
datos en Javascript, pero sirva como pincelada. que también se ven más adelante, junto con el propio
tipo Object, que hacer referencia a un objeto
Javascript nos proporciona una serie de datos genérico).
primitivos con los que poder trabajar, como son:
var numero;
4
IBM SkillsBuild | Introducción a Python
Scope, ámbito
numero = 5;
Una vez que ya tenemos la variable definida, para El ámbito (scope) de una variable es el contexto (la
darle un valor no necesitamos usar la palabra zona del programa) en la que la variable es visible
reservada var. /accesible (está declarada), y por tanto puede ser
usada. El scope determina la accesibilidad de nuestro
También podemos definir e inicializar una variable código, es decir, desde dónde podemos acceder a
en un solo paso: nuestras variables.
Se define constante como un espacio en la memoria El siguiente ejemplo ilustra el comportamiento de los
del ordenador cuyo valor no podrá variar a lo largo de ámbitos:
la ejecución del programa. Es decir, una “variable”
cuyo valor no varía nunca.
function creaMensaje() {
var mensaje = "Mensaje de prueba";
Por convenio, los nombres de las constantes van en
}
mayúsculas.
creaMensaje();
Sintaxis: alert(mensaje);
5
IBM SkillsBuild | Introducción a Python
El ejemplo anterior define en primer lugar una El código anterior es el ejemplo inverso al mostrado
función llamada creaMensaje que crea una variable anteriormente. Dentro de la
llamada mensaje. A continuación, se ejecuta la función muestraMensaje() se quiere hacer uso de una
función mediante la llamada creaMensaje(); y variable llamada mensaje y que no ha sido definida
seguidamente, se muestra mediante la dentro de la propia función. Sin embargo, si se
función alert() el valor de una variable ejecuta el código anterior, sí que se muestra el
llamada mensaje. mensaje definido por la variable mensaje.
Sin embargo, al ejecutar el código anterior no se El motivo es que en el código JavaScript anterior, la
muestra ningún mensaje por pantalla. La razón es variable mensaje se ha definido fuera de cualquier
que la variable mensaje se ha definido dentro de la función. Este tipo de variables automáticamente se
función creaMensaje() y por tanto, es una variable transforman en variables globales y están
local que solamente está definida dentro de la disponibles en cualquier punto del programa (incluso
función. dentro de cualquier función).
Cualquier instrucción que se encuentre dentro de la De esta forma, aunque en el interior de la función no
función puede hacer uso de esa variable, pero todas se ha definido ninguna variable llamada mensaje, la
las instrucciones que se encuentren en otras variable global creada anteriormente permite que la
funciones o fuera de cualquier función no tendrán instrucción alert() dentro de la función muestre el
definida la variable mensaje. De esta forma, para mensaje correctamente.
mostrar el mensaje en el código anterior, la
Si una variable se declara fuera de cualquier función,
función alert() debe llamarse desde dentro de la
automáticamente se transforma en variable global
función creaMensaje():
independientemente de si se define utilizando la
palabra reservada var o no. Sin embargo, las
function creaMensaje() { variables definidas dentro de una función pueden ser
var mensaje = "Mensaje de prueba"; globales o locales.
alert(mensaje);
} Si en el interior de una función, las variables se
creaMensaje(); declaran mediante var se consideran locales y las
variables que no se han declarado mediante var, se
transforman automáticamente en variables globales.
function creaMensaje() {
function muestraMensaje() {
mensaje = "Mensaje de prueba";
alert(mensaje);
}
}
creaMensaje();
alert(mensaje);
6
IBM SkillsBuild | Introducción a Python
¿Qué sucede si una función define una variable local En este caso, los mensajes mostrados son:
con el mismo nombre que una variable global que ya
• gana la de fuera
existe? En este caso, las variables locales prevalecen
• gana la de dentro
sobre las globales, pero sólo dentro de la función:
• gana la de dentro
• gana la de fuera
• gana la de dentro
• gana la de fuera
alert(mensaje);
muestraMensaje();
alert(mensaje);