ÍndiceÍndice  PortalPortal  CalendarioCalendario  FAQFAQ  BuscarBuscar  RegistrarseRegistrarse  MiembrosMiembros  Grupos de UsuariosGrupos de Usuarios  Conectarse  

Comparte | 
 

 Tuto Basico de Perl - Parte 1

Ir abajo 
AutorMensaje
[Somnophore]
.:Moderador Del Mal:.
.:Moderador Del Mal:.
avatar

Masculino Cantidad de envíos : 131
Edad : 31
Fecha de inscripción : 06/08/2007

MensajeTema: Tuto Basico de Perl - Parte 1   Miér Ago 15, 2007 8:18 pm

LAS VARIABLES


Éste es nuestro primer tema, y en él vamos a hablar de la pieza fundamental de cualquier lenguaje de programación: las variables.

¿Qué es una variable?

Una variable como bien dice su nombre es algo que puede "variar". Al nosotros hacer un script no tenemos manera de saber toda la información que vamos a tener, ya sean resultados de sumas, entradas de datos, etc. Para ello usamos las variables, para almacenar todos esos datos.

En Perl hay varios tipos de variables, y les vamos a hechar un vistazo a las mismas:

Las Escalares ($variable)

En Perl la variable básica es la escalar. Ésta variable puede contener cualquier tipo de información ya sean números, letras, cadenas de texto, signos, código ASCII, etc, así como cosas más avanzadas como referencias que veremos más adelante.

Para definir una variable escalar todo lo que tenemos que hacer es:

Código:
$variable

El símbolo $ se usa para identificar a nuestra variable, y después podemos usar el nombre que queramos. Para nombrar nuestras variables debemos de seguir algunas de reglas:

    Nuestras variables únicamente pueden nombrarse con valores alfanúmericos.

    El nombre de nuestras variables son sensibles al uso de mayúsculas y minúsculas, esto significa que las variables $variable y $Variable son dos variables distintas.

    Las variables NO puden comenzar con números, solamente letras o _, ya después se puede usar cualquier cáracter alfanúmerico

    Al definir nuestra variables es buen hábito usar el keyword "my"


Muy bien, ahora veamos como podemos definir una variable e iniciarla con un valor:

Código:
my $numero = 10;

También podemos definirla primero, y después inicializarla:

Código:
my $numero;
$numero = 10;

En ambos casos nuestra variable terminará con el valor "10".

Podemos asignar el valor de una variable a otra, por ejemplo:

Código:
    my $variableA = "Mi Variable";
 
    my $variableB = $variableA;
 
    my $variableC;
 
    $variableC = $variableA;

En la línea 1 definimos e inicializamos la variable $variableA con el valor "Mi Variable".
Luego en la línea 3 definimos e inicializamos la variable $variableB con el valor de $variableA, de ésta manera ambas variable tendrán el mismo valor.
Y en las líneas 5 y 7, definimos la variable, e inicializamos la variable en dos pasos distintos.

En este momento podremos ver que cada línea de código de Perl debe de acabar con un ;

Los Arrays (@array)

Los arrays o arreglos como se les llama comúnmente en español no son exactamente vectores, más que nada se les puede definir como una lista de cosas, éstas cosas pueden ser números, letras, palabras o hasta variables. Este tipo de variable es un punto sumamente fuerte de Perl y que te verás usando más de una vez en tus scripts. Nuestro array se define de la siguiente manera:

Código:
my @array;

Vemos que debemos de usar el símbolo @ para definir nuestros arrays.

Como los arrays son listas de cosas, es diferente la manera en que los inicializamos:

Código:
my @array = ('Perro','Gato','Gallina','Pez');

Aquí definimos e inicializamos nuestra variable, para definir la lista con la que queremos inicializar a nuestro array, ponemos todos los elementos de la lista entre paréntesis y separando cada elemento por una coma. Aquí como cada elemento de la lista es una cadena de texto, por eso los ponemos entre comillas sencillas, aunque también podrían ser comillas dobles.

La separación es por comas, así que no importa la cantidad de espacios que haya entre cada elemento, a continuación pongo un ejemplo:

Código:
my @array = (
          'Perro',
          'Gato',
          'Gallina',
          'Pez'
              );

Ya que tenemos una lista de "cosas" cargadas dentro de nuestro array, ahora debemos de poder tomar alguno de estos elementos. A cada elemento dentro de nuestra lista le corresponde un número, basado en su posición dentro de la lista, lo hay que tener en mente, es que Perl empieza a contar los elementos desde 0 NO desde 1.

Por lo que en nuestro array con la lista de animales, el elemento 0 sería "Perro" y el elemento 1 sería "Gato", así sucesivamente.

Para tomar algún elemento de nuestra lista debemos de usar la siguiente sintáxis:

Código:
$array[<num_elemento>];

En donde <num_elemento> es un número que corresponde al elemento que queremos tomar, veamos un ejemplo

Código:
my @array = ('Perro','Gato','Gallina','Pez');
 
my $animal = $array[3];

En la línea 1 definimos e inicializamos nuestro array, en la línea 3 asignamos el elemento 3 de nuestro array a la variable $animal.

¿Sabes cuál será el valor de nuestra variable $animal?

Si pensaste "Pez" estás en lo correcto.

Los hashes (%hash)

La variable hash o arreglo asociativo es un tipo de variable sumamente especial en Perl, ya que pocos lenguajes cuentan con variables de este tipo. El hash es un tipo de lista por medio de la cual podemos llamar a sus valores con el uso de llaves. Así dependiendo de la llave que se llame será el valor que se retorne.

Entenderemos esto más a fondo ahora que veamos unos ejemplos.

El hash se define de la siguiente manera:

Código:
my %hash;

Vemos que el símbolo para diferenciar a las variables de tipo hash es el símbolo %. Ahora, como se explicó nuestro hash es una lista que corresponden a llaves y valores, los hashes los podemos inicializar de dos maneras distintas:

Código:
my %hash = ('Uno','One','Dos','Two','Tres','Three');

Parece similar a una array pero hay una gran diferencia, pues realmente lo que ve Perl es lo siguiente:

Código:
    Uno  => One
    Dos  => Two
    Tres => Three

Va tomando de dos en dos los elementos, el primer elemento de cada par lo toma como llave, y el segundo elemento como su valor. ¿Por qué se dicen "llaves"? Es debido a que funciona como una llave real, con una llave solamente podemos abrir una puerta, de ésta manera con una llave solamente podremos adquirir un valor.

Para llamar el valor de una de nuestras llaves la sintáxis es:

Código:
$hash{<nombre_llave>};

En donde es el nombre de la llave de la cual queremos el valor. Entonces, tomando el hash que tenemos de ejemplo, podemos adquirir el valor de la llave Uno de la siguiente manera:

Código:
$hash{'Uno'};

Expliqué que hay dos maneras de inicializar nuestros hashes, y ahora les voy a mostrar la segunda manera. Ésta sintáxis en lo personal me parece mucho más clara, y les recomiendo que la usen:

Código:
      my %Animales = (
                'Perro'  => 'Dog',
                'Gato'    => 'Cat',
                'Gallina' => 'Chicken',
                'Pez'    => 'Fish'
                );

Vemos como cada par llave-valor es separado por comas, ahora, dentro del par llave-valor se usa la siguiente sintáxis:

Código:
<LLAVE>  => <VALOR>

En dónde <LLAVE> es el nombre de la llave, y <VALOR> el valor de la misma. Entonces siguiendo con éste hash de ejemplo, dígamos que queremos saber como se dice "Gallina" en inglés, podríamos entonces hacer lo siguiente:

Código:
my $gallina_ingles = $Animales{'Gallina'};

Al pedir el valor de la llave "Gallina" nos dá como resultado "Chicken".

Ahora, que pasa si hacemos lo siguiente:

Código:
my $variable = $Animales{'Pez'};

¿Cuál será el valor de $variable?

Si pensaste en "Fish" estás en lo correcto.

Muy bien, ¿por qué cuando llamamos a los valores de nuestro array o hash usamos el símbolo $ en vez del @ ó %?

La razón de esto es que si podemos ver bien, los arrays y los hashes almacenan variables escalares, entendemos como variable escalar todo aquello que sea un número, una cáracter, una cadena de texto, etc. Entonces cuando pedimos algún elemento de nuestro hash o array, estamos pidiendo un valor escalar, es por ello que usamos el

Código:
$array[<elemento>]
$hash{<llave>};

Muy bien, ahora voy a enlistar los tipos de variables que faltan. Éstas variables no se van a explicar, pues para entenderlas tendríamos que ver temas más avanzados que se verán en el futuro.

Los FILEHANDLES

Con este tipo de variable podemos hacer llamadas a archivos desde Perl. Éstas variables las conoceremos en el tutorial intermedio cuando aprendamos a leer y manipular archivos.

Los DIRHANDLES

Ésta variable se usa cuando hacemos lectura de un directorio, de igual manera lo veremos hasta el tutorial intermedio.

Los Typeglobs

Un typeglob es una entrada a la tabla de símbolos de Perl, por lo que con un typeglob podemos llamar a todos los tipos de variables de Perl.

_________________







"El ignorante afirma, el sabio duda y reflexiona"
Volver arriba Ir abajo
Ver perfil de usuario http://www.iaedelmal3.blogspot.com
 
Tuto Basico de Perl - Parte 1
Volver arriba 
Página 1 de 1.
 Temas similares
-
» CATA OCTAVA (Parte II)
» VENDO PARTE DE MI COLECCIÓN DE DISCOS
» Entrevista en la radio a Euronymous
» Nargaroth... acojonante.
» VENDO UNA PEQUEÑA PARTE DE MI COLECION PERSONAL, MAS IRE AÑADIENDO--

Permisos de este foro:No puedes responder a temas en este foro.
 :: Programacion :: Perl-
Cambiar a: