PDF de programación - El Evangelio de Perl

Imágen de pdf El Evangelio de Perl

El Evangelio de Perlgráfica de visualizaciones

Publicado el 22 de Abril del 2021
875 visualizaciones desde el 22 de Abril del 2021
71,7 KB
31 paginas
Creado hace 10a (09/09/2013)
El Evangelio de Perl



que es Perl
variables
valores
mas sobre arreglos
mas sobre hashes
verdadero y falso
expresiones lógicas
operadores
funciones
bloques
mas funciones integradas
enunciados
referencias
archivos
regex
mas sobre regex
variables especiales



Tabla de contenido
Lo básico...



Lo bueno... aquí se le saca la utilidad...



Algo mas... siempre es bueno saber mas...



meta-documento...



Lo básico...

Que es Perl



mas sobre archivos
como procesa Perl un programa
la linea de comando de Perl
mas sobre contexto
herencia de objetos

paquetes
objetos
2 clases de métodos
el módulo CGI
el módulo DBI
el módulo LWP

que se pretende
realimentación



Perl es un lenguaje de computador interpretado muy original...
a pesar de su apariencia de taquigrafía tiene mucho de los lenguajes
naturales... resolver un problema en Perl es increíblemente mas
Fácil (y mas corto) que en cualquier otro lenguaje.
Perl no tiene esas reglas de los otros lenguajes que lo distraen a uno y
lo hacen perder tiempo... en Perl uno no tiene que pensar si la variable
es numérica o carácter... no tiene que pensar si el valor cabe en la
variable...



y por supuesto no hay que compilar... lo que no quiere decir que
Perl sea lento...
tampoco hay duda de que Perl se aprende rápido... al menos lo básico...
es muy fácil hacer pequeños programas para aclarar rápidamente las
dudas...
esta también la ventaja de su portabilidad... Perl existe hasta en
es como volver a la época en que todos los computadores tenían Basic...
solo que Perl es superior a cualquier lenguaje que yo haya visto...
ahora si vamos al grano...

$a = 5;
$b ="xxx";
$c = $a++; # $a++ es como en C ósea $a + 1

las instrucciones terminan en punto y coma...
Perl se confunde muy fácil si se olvida el punto y coma

todo lo que este después de # en la misma línea
es un comentario

un escalar puede tener números, strings u otras cosas
mas complicadas como referencias y descriptores



Windows...



variables



por $



argumentos



las variables escalares empiezan por $



note esto sobre las instrucciones:


note esto sobre comentarios


note esto sobre escalares:



para empezar no es necesario declarar las variables previamente...
las variables se pueden empezar a usar directamente en las expresiones
existen 3 tipos básicos de variables
1. escalares



2. arreglos



las variables arreglos empiezan por @



note esto sobre arreglos:



nota sobre print



print es una de las muchas funciones de Perl
en Perl hay mucha flexibilidad para escribir los



print ( $a, $b ); # con parentesis
print $a, $b; # sin parentesis

los elementos de un arreglo son escalares que empiezan
los subíndices empiezan por 0 como en C
el escalar $a no tiene que ver nada con $a[ ]

@a = (95, 7, 'fff' );
print $a[2];
# imprime el tercer elemento: fff
print @a
# imprime: 957fff ...todo pegado

los elementos se accesan por claves
no hay claves duplicadas

%a = ('x', 5, 'y', 3 );
$a{x}=7;
print $a{x};
# imprime: 7

%a = ( 'x', 5, 'y', 3);
# llena 2 elementos del hash
print $a{'x'};
# imprime: 5
print $a{'y'};
# imprime: 3

las variables hash empiezan por %
para crear un elemento de un hash se requiere una lista de 2
el primer elemento es la clave y el segundo es el valor



si la clave es un string sencillo se puede omitir las comillas

si se reasigna un elemento se pierde el valor viejo



note esto sobre los hashes



3. hashes o arreglos asociativos



valores



valores

los valores son las cosas que uno mete a las variables...

en Perl los valores se guardan separados de las variables e incluso

cada valor tiene un contador que indica cuantas variables lo estan

usando... cuando el contador es cero el valor desaparece


valores interesantes:
1. los strings



letras



$a{x} es lo mismo que $a{'x'}

$a = "abcd";
$a = 'abcd';

$a = 'pueblo'
print "hola $a";
# imprime: hola pueblo
print 'hola $a';
# no hay interpolación en comillas simples...
# imprime: hola $a

los strings pueden escribirse con comillas dobles o simples



cuando se usa doble comilla se pueden interpolar variables
escalares y arreglos ...interpolar significa intercalar... en el
resultado final la variable se sustituye por su valor...



uno se puede preguntar como se interpola una variable entre
sin que se altere el nombre de la variable...
p.e. como se coloca $a antes de una letra como "s"



"abc$as";
# no sirve... trata de interpolar la variable $as
"abc${a}s"

# interpola correctamente $a

$a = 1234;
print "valor=$a\$";
# imprime: valor=1234$

print "aaa \n";
# salta linea
print 'aaa \n';
# no salta... imprime: aaa \n


entre las comillas dobles se pueden tambien poner caracteres
como \n (salto de linea), \t (tabulador), \b (backspace),...



entre las comillas doble. se tiene que escapar los caracteres
que tienen significado especial en Perl... como $, ", \ ...



la "escapada" se hace con backslash antes del caracter
entre las comillas simples solo se tiene que escapar ' y \


cuando se interpola un arreglo, Perl regala un separador que es
blanco



el separador es realmente el valor de la variable escalar $" ...
$" puede ser reasignada
$" = ',';

print "val=@a";


# imprime: val=95,7,fff

@a = (95, 7, "fff" );
print "val=@a" ;
# imprime: val=95 7 fff

print 'abc\'s';
# imprime: abc's



especiales



un



2. las listas



3. strings con comillas invertidas



las comillas invertidas se comportan como en los shelles de Unix



$a = `ls -l`;
# $a queda con la salida del comando "ls -l"



$a = (2, 7, 'sss');
# $a queda con el último valor: 'sss'
@a = (2, 7, 'sss');
$a = @a;
# $a queda con el número de elementos de @a: 3

p.e. (2, 7, 'sss' )



note que (2, 7, 'sss') es un valor
mientras que @a es un arreglo - recuerde que las variables y los
valores son 2 cosas distintas
existen abreviaturas para algunas listas
$a = (2..7);

# $a queda con (2,3,4,5,6,7);

$a = ('a'..'e');


# $a queda con ('a','b','c','d','e')



en comillas invertidas se puede interpolar variables...
en comillas dobles se puede intercalar comillas invertidas


$a = 5;
# aqui 5 es el valor de $a
$b = $a;
# aqui el valor 5 de $b es otro valor

para que se utilice un solo valor para 2 variables se necesita
utilizar referencias... referencias se ven mas adelante...



asociar un valor con una variable se llama bind...



los subíndices positivos recorren los elementos al derecho


@a = ('a'..'e');

los subíndices negativos recorren los elementos al revez


@a = ('a'..'e');

@a = ('a'..'e');
$n = @a;
# aqui $n es 5
lo del contexto es una caracteristica de Perl...
Perl evalua una expresiòn segun el uso que se piensa
dar a la expresión: contexto escalar o contexto de lista

un arreglo en contexto escalar retorna el número de elementos



subarreglos:



mas sobre arreglos


# $a[0] es 'a' $a[4] es 'e'



# $a[-1] es 'e' $a[-5] es 'a'



@a = ('a'..'e');

@b = @a[3, 0];

# @b = ('d', 'a');

@c = @a[2-5];



igual
($a, $b ) = @x



@a[3, 0] = @a[0, 3];



@a = ('a'..'e');
$a = join ":", @a
# $a queda con "a:b:c:d:e";

# @a[2,3,4,5] o @a[2..5]


es posible colocar una lista de variables escalares a la izquierda del

# intercambia los elementos 0 y 3

# $a queda con el valor de $x[0]
# $b queda con el valor de $x[1]



es posible colocar un subarreglo a la izquierda del igual

la función join convierte un arreglo en un escalar



la función split convierte un escalar en un arreglo... muy útil para
separar los campos en un registro de un archivo texto



$a = 'a:b:c:d:e';
# no le recuerda esto al /etc/passwd?
@a = split /:/, $a

# @a queda con ('a', 'b', 'c', 'd', 'e')
aqui el segundo parámetro es mas que un string...
es una regex... regex es un cuento largo que se ve mas adelante

@a = ('a'..'e');
$b = shift @a;
# $b queda con 'a'
# @a queda con ('b'..'e');

@a = ('a'..'e');
$b = pop @a;

# $b queda con 'e'
# @a queda con ('a'..'d');

unshift @a, 'a';
# agrega 'a' al principio del arreglo
push @a, 'e';
# agrega 'e' al final del arreglo
unshift y push pueden tambien agregar una lista de elementos
en lugar se un solo elemento



la función shift entrega el 1er elemento del arreglo y ademas le

quita ese elemento al arreglo



la función pop entrega el último y bota el último del arreglo



se puede intuir que hacen las funciones unshift y push...



la función splice permite extraer un subarreglo

y modificar a la vez el arreglo original...



original



mas sobre hashes

para que sea mas claro la asig
  • Links de descarga
http://lwp-l.com/pdf19123

Comentarios de: El Evangelio de Perl (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad