Introducción a Perl Verónica Jiménez Jacinto Enero 2010.

Slides:



Advertisements
Presentaciones similares
2. Manejo de memoria Manejo de memoria estática
Advertisements

Estructuras de control
Archivos de Texto. Introducción Los archivos son una secuencia de bits que se guarda en el disco duro. La ventaja de utilizar archivos es que los datos.
PHP. PHP (Hypertext Preprocessor) preprocesador de Hipertexto Se ejecuta en el servidor El resultado de ejecutarse es código HTML Manual oficial en
Lenguaje PHP Capítulo 4.
MANUAL EXPRESS DE C J.M.sevilla.
Te presento a Python Qué es Python? Lenguaje interpretado
PHP-MYSQL OPERADORES EN PHP
Desarrollo de Aplicaciones para Internet
CADENAS EN PHP.
Tema 2: Lenguaje PHP básico
Herramientas Grep y AWK
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
La estructura básica de los programas en java, algo a tener en cuenta y que debemos recordar siempre es el archivo debe llevar el nombre de la clase con.
CI TEORIA semana 8 Subprogramas o funciones Definición de funciones.

Universidad de Tarapacá Fundamentos Lenguaje y Programación Rodrigo Cornejo Mejías Jonathan Cea Chávez Marcelo Gómez Gonzales.
CAPITULO 1 Escribiendo Sentencias SELECT Básicas
Archivos Programación.
Lenguaje C.
CARACTERÍSTICAS DE LOS PROGRAMAS
Formas de que PHP escriba dentro de HTML Programación en Internet II.
Programación II Ing. Diego J. Arcusin 8 – Perl.
Inteligencia artificial
PAGINAS DINAMICAS PHP. INTRODUCCION PHP (Profesional Home Pages - Páginas Personales Profesionales) es un lenguaje para la creación de páginas web incrustado.
Informática Ingeniería en Electrónica y Automática Industrial
Introducción a LISP Sergio Jiménez Celorrio Departamento Ingeniería Informática – UC3M.
CAPITULO 1 - INTRODUCCIÓN Comenzaremos con una rápida introducción al lenguaje C. Mostraremos algunos elementos esenciales del lenguaje en programas reales,
Valor X Valor Y Punto (0,0) Coordenadas.
Administración de Proyectos de desarrollo de Software Ciclo de vida de un proyecto Enfoque moderno Temas Componentes Directivas Declaraciones globales.
Informática Ingeniería en Electrónica y Automática Industrial
El Lenguaje C en CGI El ANSI C, uno de los lenguajes de programación más conocidos, utiliza la función getenv(),definida en el archivo de cabecera stdlib.h,
Archivos Programación I MC Beatriz Beltrán Martínez.
Elementos básicos del lenguaje
FILTROS. Un filtro es un programa que recibe una entrada, la procesa y devuelve una salida. Relacionando filtros simples podemos hacer prácticamente cualquier.
2008 Escuela de Informática y Telecomunicaciones, DuocUC Escuela de Informática y Telecomunicaciones Clase 7: Control del flujo en BASH Nombre unidad de.

Administración de Servicios de Red 1 Escuela de Informática y Telecomunicaciones Suplementos: Shell scripts rpm RHA 030 Sistemas Operativos de Red.
Elementos básicos del lenguaje
2008 Escuela de Informática y Telecomunicaciones, DuocUC Escuela de Informática y Telecomunicaciones Clase 12: Introducción a AWK Nombre unidad de aprendizaje:
2008 Escuela de Informática y Telecomunicaciones, DuocUC Escuela de Informática y Telecomunicaciones Clase 8: Control del flujo en BASH Nombre unidad de.
Tipos de datos en Perl Arreglos
Programación de Sistemas FEI – 2008
Manejo de archivos en Perl
Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
Términos algoritmo diseñar algoritmo implementar algoritmo
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
CARACTERÍSTICAS Es un lenguaje de programación estructurado de propósito general. Está estrechamente asociado al sistema operativo UNIX, ya que el propio.
Curso de Programación Web html, java script. Contenido HTML Principios Color, links, listas Archivos externos Tablas y frames Java Script Datos y expresiones.
PRINCIPIOS DE PROGRAMACIÓN
PHP el Lenguaje Ejercicios Básicos.
2008 Escuela de Informática y Telecomunicaciones, DuocUC Escuela de Informática y Telecomunicaciones Clase 9: Funciones, variables y arreglos en BASH Nombre.
Presente un cuestionario con los aspectos mas importantes sobre los
Práctica Profesional PHP.
Lic. Carla Aguirre Montalvo
Lenguaje de programación c
1 Desarrollo Web en Entorno Servidor Tema 4: Estructuras de control. Estructuras Selectivas. Operadores de comparación. Operadores Lógicos. Operadores.
Expresiones Regulares
REPÚBLICA BOLIVARIANA DE VENEZUELA MINISTERIO DEL PODER POPULAR PARA LA EDUCACION SUPERIOR UNIVERSIDAD VALLE DEL MOMBOY CARVAJAL EDO. TRUJILLO ENERO 2014.
PROGRAMACIÓN Grupo de Modelamiento de Sistemas
U3 Subprogramación 1 Probablemente el tema mas importante del curso ¡¡¡A por el reuso!!!
Visual Basic Prof.: Carol Briones García. Uso de Archivos  Definición  Es un conjunto de información que se almacena en algún medio de escritura que.
Curso de Programación Web html, java script. Contenido HTML Principios Color, links, listas Archivos externos Tablas y frames Java Script Datos y expresiones.
Archivos. Introducción Los datos que hemos tratado hasta el momento han residido en la memoria principal. Sin embargo, las grandes cantidades de datos.
1 Métodos. 2 Un método es un conjunto de instrucciones definidas dentro de una clase, que realizan una determinada tarea y a las que podemos invocar mediante.
JOSE ALBERTO JIMENEZ JIMENEZ KATTY HIPOLITO. 7.1 INTRODUCCION AL LENGUAJE EMSAMBLADOR.
Módulo III.- Recursos en UPSA VIRTUAL Este módulo explica como configurar los distintos recursos que pueden encontrarse en un curso de MOODLE. Recurso:
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Introducción a Perl. * Es un lenguaje de propósito general originalmente desarrollado para la manipulación de texto y ahora utilizado para un amplio rango.
Transcripción de la presentación:

Introducción a Perl Verónica Jiménez Jacinto Enero 2010

Caracteristicas de Perl... ● Es un lenguaje de propósito general originalmente desarrollado para la manipulación de texto y ahora utilizado para un amplio rango de tareas, como administración de sistemas, desarrollo web, programación en red, y más. ● Se previó que fuera práctico. ● Sus principales caracterásticas son que es fácil de usar, y tiene incorporado un poderoso sistema de procesamiento de texto.

La primera linea... ● La primera linea de un programa en Perl contiene el shebang (par de caracteres que identifica el texto que sigue), que le indica al sistema operativo dónde encontrar el intérprete de Perl. #!/usr/bin/perl

La instrucción print ● Esta instruccion envia información a la pantalla o a un archivo. : #!/usr/local/bin/perl print "Hola Mundo!\n"; print "Esto se escribe en\ndos lineas.\n"; print "Pero esto", "Se escribe en una sola linea.\n"; print '¿Porque aqui no se ejecuta como cambio de linea?.';

Secuencias de escape ● Las siguientes secuencias de escape pueden ser interpretadas en la instrucción print o en la lectura de archivos:  \n cambio de linea y retorno de carro  \ttabulador horizontal  \vtabulador vertical  \a bell o beep (campanita)

Tipos de variables ● Escalares( scalars). Cualquier cosa: $escalar ● Arreglos o vectores o listas ● Tablas asociativas o diccionarios (hashes). %hash. (TiposVariables.pl) ● Declaración obligatoria con la directiva “my” ● use strict ; (TiposVariablesStrict.pl)

Estructuras de control: condicion if(condicion){ ~~ } elsif{ ~~ }else{ ~~ }

Operadores de comparacion ● Perl tiene 4 importantes operadores, para construir condiciones: NuminterpretaciónString  <``less than'' lt  > ``greater than''gt  == ``equal to''eq  != ``not equal to''ne  <= ``less than or equal to,'' le  >= `` greater than or equal to. ” ge

Estructuras de control: ciclo while while(condicion){ }

Estructura de control: ciclo for ● for( ; ; ) {bloque} ● Ejemplo: for($i=0;$i<20;$i++) # ejecuta el bloque de código 20 veces { print “$i.- Hola”; } for.pl

foreach $elemento # ciclo sobre cada uno de los elementos de { # procesa cada $elemento } Estructura de control: foreach

Diversión con cadenas... substr ● substr($a,$pos,$num) :  Regresa una subcadena de la cadena $a, desde la posición $pos, considerando $num caracteres. Si $num no es especificado, se considera el fin de la cadena como fin de la subcadena. Ejemplo: $cadena = "Bienvenidos a Perl!\n"; print substr($a, 0, 11);#"Bienvenidos" print substr($a, 13); # " a Perl!\n“ SearchString.pl

● split(//,$a): divide la cadena $a, usando la expresion regular entre //. Ejemplo: $a = "Hello. Welcome = split(/ /, $a); # Tres items: "Hello.","Welcome","Perl!\n" Diversion con cadenas... split()

● : une las cadenas del usando $sep como separador entre = ("Hello.", "Welcome", "Perl!\n"); $a = join(' # "Hello. Welcome Perl!\n"; $b = join(' and # "Hello. and Welcome and Perl!\n"; $c = # "Hello.Welcome Perl!\n"; Diversion con cadenas... join

Trabajando con archivos ● open(FILEHANDLE,"Flatfile.txt"); Abre el archivo Flatfile.txt para leerlo y lo asocia al manejador FILEHANDLE. ● open (OVERWRITE, ">overwrite.txt"); Abre el archivo overwrite.txt para escribir en él y lo asocia al manejador OVERWRITE. ● open (APPEND, ">>append.txt"); Abre el archivo append.txt para agregarle cosas y lo asocia al manejador APPEND.

Vive o muere... ● Que hacer en caso de que archivo no se puede abrir? open (FILEH, “flatfile.txt”) || die “no se pudo abrir el archivo flatfile.txt\n”;

Operadores Especiales sobre ficheros... ● -r -w -x : comprueba si hay permiso ● -e : comprueba si el archivo exite ● -z : comprueba si el archivo tiene tamaño nulo ● -s : devuelve el tamaño del archivo ● -f -d : comprueban si el archivo es un fichero ó directorio if(-r 'flatfile.txt') { open(FILEHANDLE, “flatfile.txt”)|| die... }

Leyendo a traves del archivo... open(MIFICH,"fichero.txt")|| die "No puedo encontrar fichero.txt\n"; while( ) { print $_; # $_ contiene la línea actual } close(MIFICH); open(LOGFILE,”flatfile.txt”)|| die "no puedo abrir flatfile.txt\n"; $title = ; print "Report Title: $title"; for $line ( ) { print $line; } close(LOGFILE);

Escribiendo a traves de archivos... open(OUTF,“>fichero.txt")|| die "No puedo encontrar fichero.txt\n"; print OUTF “Nuevo contenido del archivo\n”; close (OUTF);

Expresiones regulares ● La consulta mas sencilla: =~ $user_location = "I see thirteen black cats under a ladder."; if ($user_location =~ /thirteen/) { print "Eek, bad luck!\n"; }

Metacaracteres... ● Un patrón está delimitado por dos barras inclinadas, /patrón/ ● Los símbolos más habituales en expresiones regulares son: ● /./ # cualquier carácter excepto \n,(wildcard) ● /\s/ # es un espacio en blanco (space) ● /\t/ # es un tabulador ● /\w/ # es un carácter alfanumérico (word), ● /\W/ # no es un carácter alfanumérico (word) ● /\d/ # es un dígito ● /\D/ # no es un dígito ● /\A/ # es el principio de una cadena ● /\Z/ # es el final de una cadena ● /^/ # es el principio de una línea de archivo ● /$/ # es el final de una línea de archivo

cuantificadores ● Los cuantificadores son:  + una ó más veces  ? cero ó una vez  * cero ó más veces  {n,m} mínimo y máximo de veces ● Los parentesis se usan: - /(\d\s\w)/ # para agrupar varios símbolos en un solo patrón - /(A|B|C)/ # para definir un patrón formado por varias alternativas: coincide con 'A', con 'B' o con 'C‘ - Tambien para guardar la “memoria de lo encontrado”

Ejemplos: ● /ab+c/ encuentra “abc”, “abbc”,”abbbc'' y asi sucesivamente. ● /ab*c/ lo mismo que el anterior, pero con “ac”. ● /^ Localiza un URL ● /\d\d\d-\d\d\d\d/. Un numero telefonico ● /ATG\w+/La secuencia de un gen?

Mas ejemplos... ● $string =“ATGTTGCCGCGATCCCGAAA"; $string =~ = ($1, $2, $3);

● # Ejemplo escrito por Bruno Contreras en Julio de 2005 $RNA = "CAUACUAAGAUCGCGAUAUUAUUAGCGAUAUACGACU"; $stop1 = 'UAA'; $stop2 = 'UGA'; $stop3 = 'UAG'; ($total1,$total2,$total3,$total) = (0,0,0,0); while( $RNA =~ /$stop1/g ) { $total1++; } while( $RNA =~ /$stop2/g ) { $total2++; } while( $RNA =~ /$stop3/g ) { $total3++; } while( $RNA =~ /($stop1|$stop2|$stop3)/g) { $total++; } print "$total1|$total2|$total3|$total\n";

Función de Sustitución ● $cadena =~ s/patrón/sustitución/[g|i] ● Ejemplo: $pet = “>I love my cat Sylvester, and my other cat Bill.\n"; $pet =~ s/cat/dog/g; print $pet;  $fasta =~ s/\n//g;

Subprogramas ● declaracion sub analyze_string { codigo } ● Llamado: &analyze_string; O analyze_string;

Paso de parametros ($val1,$val2) = = (3,4,5); sub mi_subrutina { print "subrutina con parámetros\n"; }

Ejemplo $seq1 = “ATGGGCCGTGCTGA...UAA"; $seq2 = “ATGCGCTGTGATGA....UAG"; $ident= calculaIdentidad($seq1,$seq2); sub calculaIdentidad { my ($secA,$secB) my $id = 0; my $len =length($secA); for($pos=0;$pos< $len;$pos++) { if(substr($secA,$pos,1) eq substr($secB,$pos,1)) { $id++; } } return $id/$len; } Identidad.pl

Instalación de paquetes ● ● ● rial.html rial.html ● s/formation/bioperl/