InicioLinuxIntroducción a Perl - Tipos de datos

Introducción a Perl - Tipos de datos

Linux4/7/2010
Que es Perl? Perl es un lenguaje pensado para la manipulación de cadenas de caracteres, archivos y procesos. Esta manipulación se va simplificada por el importante número de operadores a disposición del usuario. El lenguaje Perl no es precompilado, pero aún así es más rápido que la mayoria de lenguajes interpretados, en especial que el Bourne Shell. Esto se debe a que los programas en Perl son analizados, interpretados y compilados por el interprete perl antes de su ejecución. Perl (Practical Extraction and Report Languaje) es un lenguaje creado a principio de los noventa por Larry Wall y su distribucion es gratuita. Un lenguaje interpretado. Como sabemos Perl es un lenguaje interpretado, en consecuencia para ejecutar un script en Perl debemos indicarle al sistema en ese mismo instante el interprete que vamos a utilizar para ejecutar dicha script en Perl. Esto se puede realizar de dos formas: 1. Insertando en la primera línea del archivo la instrucción: #!/usr/local/bin/perl. Esta sentencia indica al sistema operativo que lo que sigue es un script de Perl y que perl es el programa con el que debe ejecutarse. Dicho programa está en /usr/local/bin. Por tanto la secuencia !# es reconocida por Unix no por Perl. 2. Especificando el intérprete desde la línea de comando: perl script.pl. Vemos como directamente se ejecuta el interprete de Perl pasando como primer paramétro el script a ejecutar. En el caso de haber más parámetros, éstos se tomarán como parámetros del programa. El primer programa en Perl. Un script en Perl es una sucesión de instrucciones. Éstas se delimitan por punto y coma ( ; ). Los comentarios en los scripts deben ir precedidos por el símbolo #. Los caracteres que siguen a este símbolo y que está contenidos en la misma línea se consideran comentarios y se ignoran. El siguiente script muestra la cadena de caracteres "¡Hola, mundo!". Este script se llamará hola.pl y contendrá las siguientes líneas. #!/usr/local/bin/perl print "¡Hola, mundo!" ; Una vez que hayamos verificado los permisos de dicho script estaremos listos para ejecutarlo simplemente tecleando en la línea de comandos: hola.pl. NOTA: la extension pl es una formalidad, no es necesario su uso. TIPOS DE DATOS. Los tipos numéricos (reales y enteros). Los valores numéricos espresados literalmente se presentan en forma de valores reales codificados en doble precisión. Este formato interno se utiliza para todas las operaciones aritméticas. Por ejemplo: $x = 0.897; # un real $y = 6.23e-24; # un real $n = 567; # un entero $i = -234; # un entero Los valores enteros no pueden empezar por cero porque esto permite especificar un entero mediante su codificación octal o hexadecimal. El código octal se antecede con en cero 0; el código hexadecimal se antecede con un 0x o 0X. Por ejemplo: $x = 0377; # equivale a 255 $y = 0xff; # equivale a 255 Las cadenas de caracteres. Las cadenas de caracteres se especifican literalmente por medio de un sucesión de caracteres delimitada por comillas ( ". ." ) o apóstrofes (' . . '). Estas dos representaciones se distinguen por la interpretación hecha por Perl de las cadenas de caracteres. Cuando van delimitadas por comillas ( " .. " ), toda variable referenciada en el interior de la cadena se evalúa y se reemplaza por su valor. Por ejemplo, las instruciones siguientes: $wld = "mundo"; $str = "¡Hola $wld!"; asignan al escalar la cadena de caracteres "¡Hola mundo!". Por el contrario, las cadenas de caracteres delimitadas por apóstrofes se dejan intactas. Por ejemplo: $str = '¡Hola $wld!'; asigna al escalar $str la cadena de caracteres "¡Hola $wld!". El tipo booleano. El tipo booleano existe, al igual que en C, de modo implícito, es decir, un número es falso si es igual a cero y verdadero en cualquier otro caso. Como el cero está asociado a la ristra vacía ( "" ), ésta también equivale al valor falso. Las representaciones de datos. El lenguaje Perl posee tres tipos de representaciones de datos: los escalares. los arrays. los arrays de indexación literal o listas asociadas. Estas tres representaciones permiten asociar a cada variable utilizada un tipo. Por otra parte, las variables Perl no tienen que declararse antes de su uso. Se asignan de manera dinámica y se les asigna un valor predeterminado en función del contexto. Los escalares. El escalar representa el tipo básico en Perl. Permite representar enteros, reales y cadenas de caracteres. Las variables de tipo escalar van precedidas por el símbolo $. A continuación veremos algunos ejemplos: $real = 4.53 ; $entero = -45 ; $ristra = "Hola" ; Las variables en Perl se asignan de manera dinámica y se les asigna un valor predeterminado en función del contexto. En un contexto numérico el valor predeterminado es 0, mientras que en un contexto de cadena de caracteres el valor predeterminado es la cadena vacía "". Como ya hemos dicho, cuando una cadena de caracteres se delimita por comillas, el contenido de esta cadena es analizado por Perl para el reemplazo eventual por su valor de las variables escalares identificadas por el símbolo $. Este análisis se denomina interopolación de variables y puede evitarse poniendo delante del símbolo $ una barra oblicua inversa \ o delimitando la cadena de caracteres con apóstrofes. He aquí un ejemplo: $adr = "www"; $msg = "El servidor web ${adr}.ulpgc.es"; print $msg, "\n" ; $msg = "El servidor web $adr.ulpgc.es"; print $msg, "\n" ; $msg = "El servidor web \$adr.ulpgc.es"; print $msg, "\n" ; $msg = 'El servidor web $adr.ulpgc.es'; print $msg, "\n" ; Los arrays. Un array es una lista de datos de tipo escalar. Cada elemento de la lista es una variable escalar a la que se le asocia un valor. Las variables de tipo array se identifican por el prefijo arroba @. Por ejemplo: @numeros = (2, 1, 667, 23, 2.2, 5, 6); @letras = ("perro", "gato", "león" ) ; @mezcla = ("hola", 23, "adios", 31.234); También se permite definir los elementos de un array a partir de sus valores extremos como se muestra a continuación: @alfabeto = (a..z); Los elementos de un array se referencian mediante índices. El primer elemento se referencia por el índice 0. Por ejemplo: $numero[4]; # vale 2.2 $letras[2]; # vale " león " $mezcla[0]; # vale "hola" También se puede acceder a un array mediante el operador que define una horquilla de índices. Por ejemplo: @num1 = @numeros[1..3]; # @num1 = (1, 667, 23) @str = @letras[0,2]; # @str = ("perro", "león" ) ($ristra, $num) = @mezcla; # $ristra = "hola", $num = 23 Esta última instrucción vemos que permite asignar los dos primeros valores del array @mezcla a las variables escalares $ristra y $num. Por otro lado, el acceso a un array fuera de rango devuelve un valor indefinido 0 o "" según el contexto. Por último, si vemos las siguientes líneas de código: @a=(1,2,3); @b=(5,6,7); @c=(@a,4,@b,8); Estas expresiones generan tres arrays, (1,2,3), (5,6,7) y (1,2,3,4,5,6,7,8), y no, como podría pensarse un array de arrays, cuando incluimos un array dentro de otro, Perl "aplana" el array insertado uno a uno todos sus elementos en la posición indicada del array que ha de contenerlos, para hacer array de arrays deberemos usar referencias a estos. Como veremos en el apartado 4 de este capítulo. Las listas asociativas (arrays de indexación literal). Una lista asociativa está indexada por cadenas en lugar de por números. Se utiliza % para definir el tipo de lista asociativa y un elemento está indexado por el anterior formando ambos parejas del tipo (clave, valor). %cuota = ("root", 1000, "pat", 256, "fiona", 4000); En este caso, para acceder a cualquiera de los elementos de %cuota debemos conocer su clave. Por ejemplo: $id = $cuota{"pat"}; # $id = 256 Esta lista puede completarse añadiendo nuevos valores y asociando a cada clave el valor correspondiente. Por ejemplo: $cuota{"dave"} = 250; donde la clave es "dave" y el valor asociado es 250. Proxima entrega: OPERADORES. Gracias a los que se tomaron el tiempo en leerlo, cualquier duda PM. FUENTE: UNLu
Datos archivados del Taringa! original
0puntos
445visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
2visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

p
pablitusss🇦🇷
Usuario
Puntos0
Posts3
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.