Mostrando entradas con la etiqueta Windows. Mostrar todas las entradas
Mostrando entradas con la etiqueta Windows. Mostrar todas las entradas

miércoles, 15 de julio de 2015

Expresiones regulares en Python

Primero principios básicos:
Anclas.
Donde se encuentra lo que queremos encontrar.
  • ^patron, coincidencia con cadenas que comiencen con "patron"
  • patron$, coincidencia con cadenas que terminen con "patron"
  • ^patron$, la cadena exacta es "patron"
Expresión regular.
Una expresión regular, a menudo llamada también regex, es una secuencia de caracteres que forma un patrón de búsqueda, principalmente utilizada para la búsqueda de patrones de cadenas de caracteres u operaciones de sustituciones. 

Clase de caracteres.
El dominio de posibilidades que puede llegar a ser cierto carácter.
  • [abc] el carácter puede ser a ó b ó c
  • [123ac] el carácter puede ser  1 ó 2 ó 3 ó a ó c
  • ciudadan[oa]s puede ser ciudadanos o ciudadanas la cadena que se busca obtener.
  • [a-z] puede ser cualquier carácter de la a a la z.
  • [0-9] puede ser cualquier número del 0-9
  • [b5-] puede ser un guion b o 5, si se quiere usar un guion, este va al principio o al final nunca intermedio para evitar confusiones.
  • [^dbz] puede ser cualquier carácter que no sea ni d ni b ni z.
Cuantificadores.
  • ?: 0 o una vez.
  • +: una o mas veces.
  • *: cero o mas ocurrencias.
  • {x}: número exacto de ocurrencias que indique x siendo x una variable entera.
  • {x,y}: al menos x y no más de y ocurrencias siendo x e y variables enteras.
Código.
En Python el manejo de expresiones regulares es bastante simple, y bastante útil, es una herramienta imprescindible si deseas hacer una aplicación con una alta funcionalidad y código eficiente.
Pondré este ejemplo:
Validar si las cadenas que entren cumplen con las siguientes características:
  • 5 caracteres
  • El primer carácter es el símbolo "#"
  • El resto son números del 0-9
  • Ejemplo #12345

import re #Modulo de Python para expresiones regulares.
import os

patron=re.compile('[#][0-9]{4}') #Declaracion de patron y almacenamiento en la variable patron
prueba='#123a' #Primera prueba
if patron.findall(prueba)==[prueba]:
 print "Es correcto"
else:
 print "Fallo"

prueba='#1234'#Segunda prueba
if patron.findall(prueba)==[prueba]:
 print "Es correcto"
else:
 print "Fallo"

Aquí tendremos como resultado de la ejecución:

Vamos por partes:
El resultado del findall siempre sera una lista con los resultados encontrados, lo que se trata de encontrar es que toda la variable sea un mismo resultado, eso significa que toda la cadena es parte de la expresión que declaramos.
La primera comparación nos dará como resultado Fallo, esto debido a que solo se cumple la expresión regular hasta el "3" y entonces el resultado que retornara el findall seria ['#123'] cuando lo que se pide es que sea igual a la variable que entro para comparar, a la cadena original.
En la segunda comparación dio como resultado "Es correcto" por que el findall dio como resultado ['#1234'] que es igual a la cadena que mandamos a comparar y por lo tanto es True o "Es correcto".

Este es un tema complejo, te recomiendo practica y que no dudes en escribirme tus dudas, recuerda que pueden ser dudas que muchas otras personas tengan.
De igual manera si deseas más tutoriales de este tema solo pídelos en comentarios. Gracias.


Fuentes y lecturas recomendadas:
https://es.wikipedia.org/wiki/Expresi%C3%B3n_regular consultada el 15 de julio del 2015.
http://www.maestrosdelweb.com/guia-python-expresiones-regulares/ consultada el 15 de julio del 2015.
https://docs.python.org/2/library/re.html?highlight=re#module-re consultada el 15 de julio del 2015.

Muy en especial checate esta pagina, te puedes encontrar muchas herramientas para tus programas.

Manejo de cadenas de texto en Python

En ocasiones es necesario trabajar con el texto e interpretar que es lo que dice. Para eso tomaremos algunos axiomas a considerar:

  1. Cada posición en el texto que analizaremos significa algo.
  2. Siempre habrá una manera de interpretar esas posiciones y saber como se dividen las susodichas.
  3. Los casos especiales no son lo suficientemente especiales como para romper las reglas (checar el Zen de Python que se encuentra en este tutorial).
Muy bien, entendido esto, vamos a hacer la declaración de una variable de texto, para eso hacemos esto:

cadena="Hola mundo"

Si quisiéramos hacer referencia a un cierto carácter de nuestra variable cadena, solo usamos los famosos corchetes, por ejemplo el carácter en la posición 1.

ReferenciaACaracter1=cadena[1]

Y aquí nuestra variable "ReferenciaACaracter1 tendrá el valor 'o' de la cadena 'Hola mundo'.
Si quisiéramos una subcadena que vaya, por ejemplo del carácter 2 al 4 de nuestra cadena lo que hacemos es:

subcadena=cadena[2:4]

Entonces la variable "subcadena" tendrá como valor la cadena 'la' referente a la subcadena de los caracteres del 2 al 4 de 'Hola mundo".

Para saber en que posicion se encuentra o comienza una cadena o subcadena, lo que hacemos es utilizar la función find, pongo este ejemplo, si queremos saber en que posición se encuentra la variable a dentro de nuetsra cadena, lo que hacemos es:

posicionA=cadena.find('a')

Y esto nos retornara un entero con el index de la subcadena 'a' dentro de la variable "cadena", en este caso 3. Si no se encontrara 'a' dentro de la cadena retornaría -1.

Ahora bien, para dividir una cadena entre algún separador, utilizaremos la función split(), pondré un ejemplo, dividir la variable "cadena" en subcadenas, y tomare como referencia el espacio que se encuentra en dicha variable.

lista=cadena.split(" ")

Split toma como parametro el caracter o caracteres que quieras tener como referencia para dividir tu cadena, en este caso fue el espacio. La variable lista tendrá almacenado: ['Hola', 'mundo']
Si quisiéramos almacenar un elemento de dicha lista solo accedemos a el con los famosos corchetes por ejemplo si quisieramos almacenar el primer elemento de la lista:

hola=cadena.split(" ")[0]

Y esto nos almacenara en la variable hola esto 'Hola'.

Para saber cuantos elementos tiene la lista que obtuvimos usaremos la función len. Ejemplo:

CantidadElementos=len(cadena.split(" "))

Y la variable CantidadElementos tendrá como valor 2.
Así termina la primera parte de este tutorial de como manejar textos en python. Te recomiendo checar el tutorial de funciones.


Funciones, ciclos y condiciones en Python


Para explicar este tema necesitaremos algo muy especial mi muy apreciable lector, necesitare que se sienta un completo novato en el mundo de la programación, si en verdad lo es, mucho mejor. (Considero que por nuestro propio bien, todos los que nos dedicamos a esto debemos siempre considerarnos novatos, te recomiendo ver el tutorial de introducción a python).
Antes que nada, para declarar una variable, solo mencionamos el identificador con el que sera utilizada, y le asignamos un valor, el tipo del valor que le asignemos sera el tipo de valor de la variable.
Una variable puede cambiar de tipo durante la ejecución, según se necesite, esta propiedad se llama tipado dinámico.
Una condición, un if en Python tiene la siguiente sintaxis:

if <Condicion>:
        <Sentencias>

Es importante seguir con esta sintaxis, no hay paréntesis en la condición, solo se escribe, y el doble punto  indica el inicio al modulo que procede al indicarse la sentencia. Este modulo tiene algo muy especial, cada sentencia que se encuentre dentro del mismo va distinguido por algo muy particular, en la sintaxis del cuerpo de este modulo. Tiene una tabulacion superior a la que tiene el if de la condición, como en el ejemplo de sintaxis anterior. Esto es lo mismo para todos los ciclos o módulos que se generen en tu programa, lo que va dentro del mismo tiene que tener una tabulacion mayor a la que tiene  la condición principal de dicho modulo.

Una función es un proceso que siempre nos retornara un resultado dentro de un dominio establecido.
En python la palabra reservada para esto es def. Y la estructura para este caso es:

def <Nombre de tu función> ( Parámetro 1, Parámetro 2, Parámetro n):
       <Sentencias>
En cuanto a los ciclos no es muy diferente  a las condiciones, en este tutorial analizaremos el while, su estructura es:
while <Condicion>:
        <Sentencias>

Para que esto quede más claro presento este ejemplo que es la famosa serie de fibonacci en python.
def fibonacci(n):
    if n == 0:
        return 0
    elif n == 1:
        return 1
    else:
        return fibonacci(n-1) + fibonacci(n-2)
i=0
while(i < 10):
    print fibonacci(i)
    i+=1

Este programa solo muestra los primeros 10 elementos dentro de la serie de fibonacci.
Analicemos la función fibonacci.
La funcion recibe como parámetro un numero, este si es 0, retornara 0, si es 1 retornara 1, y si es diferente a estos dos números retornara la suma de la resta del parámetro menos uno mas la resta del parámetro menos dos.

Se inicializa un variable, que sera nuestra variable de contro en este caso i, esta variable se incrementara de uno en uno en cada vuelta del ciclo del while.
Cada que se ejecute el ciclo while, se validara que el control sea menor a 10, y se imprimirá el valor del control en la serie de fibonacci, dicho con otras apalabras, imprimirá el valor de fibonacci que indique el indice que es nuestro control. Terminado el ciclo, termina la ejecución de nuestro programa.

Ahora la parte que genera más emoción en la jornada de un programador, ejecutemos nuestro programa (Para ver como ejecutar un programa en python, checa este tutorial).

Este es un tema extenso, seguire publicando del mismo, esten en contacto, y estas son las bases para todo aquel que quiera programar algo desente en este y cualquier lenguaje, si tienes alguna duda no dudes en ponerla en comentarios, te la contestare en la primera oportunidad.
Te recomiendo ver la introducción a python. Checa el Zen de Python!!!!

martes, 14 de julio de 2015

Indroducción a Python.

Python es un lenguaje simplemente hermoso, y no lo digo solo por que su sintaxis es limpia y trata de hacer que el código sea legible y simple de comprender gracias a su estructura.
Es muliproposito, bueno la definición formal de mutiproposito ya se la imaginaran, por eso mismo la resumiré en que sirve para todo un poco, y si le hacen falta atributos para cierta aplicación se pueden agregar. Sirve para aplicaciones web, de escritorio, móviles, para paralelizar tareas, juegos, etc.

Los programas en Python se llaman scripts, y funciona gracias a un interprete, los scripts son interpretados linea por linea según se va requiriendo. Siempre para los scripts sera necesario el interprete, pero también tenemos un interprete para calar instrucciones simples, muy similar a la shell en linux, de igual manera tenemos un prompt que nos marca donde vamos con las instrucciones ejecutadas.

Para la gran mayoría de las distribuciones de Linux no es necesario instalar Python, ya esta instalado debido a que ya es parte funcional para estas, esta incrustado en las librerías básicas de las distribuciones.

Para la instalación en Windows paso este tutorial, en la primera parte del mismo están las instrucciones para instalarlo en este sistema operativo.

Para abrir el intérprete de Python en Linux es necesario solo escribir la palabra "python" en shell y este aparecerá.


Los programas se pueden hacer desde cualquier editor de texto plano y para correr el script en terminal solo se accede al directorio donde se encuentra tu programa (tutorial de los comandos básicos de Linux, ahí encontraras el comando para navegar entre directorios en el shell). A continuación en la terminal solo escribirás "python <nombre de tu archivo.py>" y ya se ejecutará tu programa.

Ya hay IDE para hacer este proceso mas sencillo, con solo pulsar un botón. Los mas recomendables en mi opinión son pycharm y geany para Python en este caso.

Python tiene una filosofía que es necesario conocerla para comprender el paradigma y al mismo lenguaje. Debido a la importancia de la misma es fácil acceder a ella, en el interprete de python solo escribimos:
import this

Y aparecerá esto:

Vale la pena echarle una leída para comprender bien este paradigma. Crecerás como programador si lo aplicas.

Ahora vamos con el hola mundo en python, es bastante sencillo, primero lo haremos con el interprete y en seguida leyendo de un archivo.

La palabra reservada que nos servirá para esta operación sera "print". Print lo que hace es imprimir en terminal la secuencia de caracteres o variables que se mande como parámetros. Cuando solo se imprime una variable de cualquier tipo no es necesario castear a String. En cambió si se  tiene algún texto como "El resultado =" y enseguida la variable, la variable si no es de tipo String se tendrá que castear, no es difícil, pero es material para un próximo tutorial.

Primero haciendo el "Hola mundo" en el interprete:

Ahora en algún archivo. Primero abrimos el editor de texto en este caso usare nano, un editor en shell muy popular en la comunidad linuxera. Para llamar a este editor se tiene utiliza en shell la palabra nano y enseguida el nombre del archivo que quieres crear en este caso sera:
nano HolaMundo.py

Y esto nos llevara al popular editor:
Y escribimos el programa, en este caso solo es el mensaje de hola mundo:

Y ahora presionamos la combinación de teclas "Control" y "O". Esto para guardar el archivo, nos mandara un mensaje confirmación, solo le damos enter.
Y ya enseguida presionamos "Control" y "X" para salir.
Para ejecutar solo escribimos "python HolaMundo.py"

Este es el primero de una serie de tutoriales de python, dudas o cualquier cosa en comentarios por favor. Por su atención gracias.
Te invito a ver funciones, ciclos y condiciones en Python.

lunes, 13 de julio de 2015

Instalar OpenCV para Python en Windows

Hoy les traigo un pequeño tutorial donde explico como instalar OpenCV para Python en Windows.

¿Que es OpenCV?
Es una biblioteca libre orientada a la visión artificial.

¿Que es Visión Artificial?
La visión artificial tiene por objetivo modelar matemáticamente los procesos de percepción visual en los seres vivos y generar programas que permitan simular estas capacidades visuales por computadora.

Para poder instalar OpenCV en Python, es necesario asegurarnos de que en verdad contamos con una versión de Python, de no ser así, debemos entrar a esta pagina: https://www.python.org/downloads/ y descargarlo, yo recomiendo la versión 2.7 ya que es una versión muy estable. Ya que entremos a la pagina, seleccionamos el botón que dice: "Download Python 2.7.10" que se muestra a continuación:


La descarga iniciara automáticamente. Una ves que ya contemos con el ejecutable de Python, le damos doble click para comenzar la instalación, y se mostrara la siguiente ventana:


Presionamos "Next":


De nuevo seleccionamos "Next":


Por ultima ves presionamos "Next" y se mostrara la siguiente ventana:


Aquí nos lanzara una ventana emergente donde nos pregunta si queremos permitir que Python instale archivos en nuestro equipo, seleccionamos que si y comenzara a instalar:


Al concluir la instalación de los paquetes nos arrojara la siguiente ventana y solo presionamos "Finish".


Y con esto ya tendremos Python instalado en nuestro equipo.

Una vez que ya contemos con Python en nuestro equipo, entramos a la siguiente pagina: http://opencv.org/ y seleccionamos la opción de: "OpenCV for Windows", que se muestra a continuación:


Al seleccionarla, la descarga de OpenCV iniciara automáticamente. Una ves que la descarga de OpenCV este completa, tenemos que darle doble click a nuestro ejecutable de OpenCV para comenzar nuestra instalación y se mostrara la siguiente ventana:


Seleccionamos el boton que tiene los 3 puntos y se encuentra a la derecha, para cambiar la ruta donde se instalara OpenCV, sera una ventana como esta:


Estando en esta ventana, seleccionamos "Equipo" y "Disco local (C:)", como se muestra en la imagen siguiente, y seleccionamos el botón de aceptar:


Y dejamos que se descompriman todos los archivos, una ves que concluya la instalación vamos a la carpeta "Disco local (C:)" y se vera parecido a la imagen siguiente:


Ahora entramos a la carpeta "OpenCV":


Posteriormente a la carpeta "build":


Luego entramos en la carpeta "Python":


Entramos a la carpeta "2.7":


Posteriormente ingresamos a la carpeta "x86":


Y copiamos el archivo "cv2.pyd". Posteriormente regresamos a la carpeta "Disco local (C:)":


Ingresamos a la carpeta "Python27":


Luego a la carpeta "Lib":


Posteriormente entramos a la carpeta "site-packages" y pegamos nuestro archivo en esta carpeta:


Ya que hicimos lo anterior, ingresamos a la siguiente pagina: http://sourceforge.net/projects/numpy/files/NumPy/1.9.2/numpy-1.9.2-win32-superpack-python2.7.exe/download y se comenzara a descargar automáticamente la librería numpy para Python, una librería necesaria al utilizar OpenCV dentro de Python y que nos ayudara con los cálculos matemáticos.

Una ves que concluya la descarga, damos doble click sobre nuestro ejecutable para iniciar la instalación de numpy y aparecerá una ventana emergente preguntándonos si deseamos permitir que numpy instale archivos en nuestro equipo, seleccionamos que si y se nos mostrara la siguiente ventana:


Seleccionamos el botón siguiente:


Seleccionamos siguiente de nuevo:


Y comenzara la instalación automáticamente, al concluir la instalación se mostrara la siguiente ventana y presionaremos el botón "finalizar":


Nos aparecerá la siguiente ventana y solo presionaremos el botón "cerrar":


Con esto OpenCV estará instalado completamente para utilizarlo en Python, pero ahora instalaremos una librería que nos será de mucha utilidad para generar interfaces fácil y rápido en Python, esto es porque la mayoría de los ejemplos de OpenCV para Python utilizan esta librería.

Ahora ingresamos al inicio y en la barra de búsqueda escribimos "cmd" y presionamos la tecla "Enter" y se nos abrirá el "Símbolo de sistema" como se muestra en la siguiente imagen:


Ahora tenemos que escribir: "pip install matplotlib":


Presionamos la tecla "Enter" y se comenzaran a descargar e instalar archivos como se muestra a continuación:


Esperamos un momento y cuando termine la instalación se vera como en la imagen siguiente:


Con esto ya estamos totalmente listos para utilizar OpenCV en Python, para probar que todo se instalo correctamente, vamos a el inicio y buscamos: "idle" y nos aparecerá: "IDLE (Python GUI)", lo seleccionamos y nos mostrara una ventana como la siguiente:


Ahora escribimos: "import cv2" y presionamos la tecla "Enter", si aparecen una flechas como estas: ">>>>", quiere decir que OpenCV se instalo correctamente:


Ahora escribimos: "import matplotlib" y presionamos la tecla "Enter":


Espero y este tutorial les sea de utilidad, cualquier duda no duden en comentarla por favor. Muchas gracias por visitar este tutorial.

Fuente:
http://sabia.tic.udc.es/gc/Contenidos%20adicionales/trabajos/3D/VisionArtificial/index.html consultada el 13 de Julio del 2015.
https://es.wikipedia.org/wiki/OpenCV consultada el 13 de Julio del 2015.

miércoles, 8 de julio de 2015

Combinación de teclas dentro de Google Chrome. Parte 1

Hoy les traigo un pequeño tutorial de combinaciones de teclas muy útiles dentro de Google Chrome.

Antes de comenzar quiero aclarar que estas combinaciones pueden variar de entre Windows y Mac, las combinaciones de teclas que explicare a continuación las pondré en 2 apartados distintos:

        -Windows y Linux
        -Mac

Y pues entonces, comencemos.

La siguiente combinación de teclas abre una nueva ventana:
    -Windows y Linux
        Ctrl + N
    -Mac
        ⌘ + N

Abrir una nueva pestaña:
    -Windows y Linux
        Ctrl + T
    -Mac
        ⌘ + T

Abrir una nueva ventana de modo incógnito:
    -Windows y Linux
        Ctrl + Shift + N
    -Mac
        ⌘ + Shift + N

Abrir un archivo de tu equipo en el navegador:
    -Windows y Linux
        Ctrl + O
    -Mac
        ⌘ + O

Este me parece demasiado útil, abrir la ultima pestaña que se cerro dentro de chrome:
    -Windows y Linux
        Ctrl + Shift + T
    -Mac
        ⌘ + Shift + T

Navegar entre las pestañas, según numero dentro de la barra de pestañas::
    -Windows y Linux
        Ctrl + 1 hasta Ctrl + 8
    -Mac
        ⌘ + 1 hasta ⌘ + 8

Desplazarse hasta la ultima pestaña en la barra de pestañas:
    -Windows y Linux
        Ctrl + 9
    -Mac
        ⌘ + 9

Desplazarse a la siguiente pestaña en la barra de pestañas:
    -Windows y Linux
        Ctrl + Tabulador o Ctrl + AvPág
    -Mac
        ⌘- + opción y la flecha derecha al mismo tiempo

Desplazarse a la  pestaña anterior en la barra de pestañas:
    -Windows y Linux
        Ctrl + Shift + Tabulador o Ctrl +RePág
    -Mac
        ⌘- + opción y la flecha izquierda al mismo tiempo

Cerrar la pestaña actual:
    -Windows y Linux
        Ctrl + W o Ctrl + F4
    -Mac
        ⌘- W

Y por ultimo, un dato curioso, la barra de búsqueda de google chrome es una calculadora!




Espero y este tutorial les sea de utilidad, cualquier duda no duden en comentarla por favor. Muchas gracias por visitar este tutorial.

Fuente:

https://support.google.com/chrome/answer/157179?hl=es-419 consultada el 07 de Julio del 2015.
http://www.computerhope.com/tips/tip203.htm consultada el 07 de Julio del 2015.

martes, 7 de julio de 2015

Instalar Brackets en Windows

Hoy les traigo un pequeño tutorial de como instalar Brackets en Windows.


¿Qué es Brackets?

Brackets es un editor de texto de código abierto orientado a lenguajes de programación interpretados como lo son HTML, CSS, JavaScript.


¿Para que lo podemos utilizar?

Este editor de texto es muy útil ya que es capaz de detectar la sintaxis de muchos lenguajes de programación como lo son  C, C++, C#, CSS, Java, HTML, Python, Ruby, XML entre muchos otros, ademas de contar con la función de auto completar, que es muy útil al momento de programar.. Hace un momento mencionaba que Brackets es muy útil con los lenguajes de programación interpretados, ya que dichos lenguajes no necesitan un compilador, y eso es lo que vuelve a Brackets una herramienta muy útil y eficiente al momento de programar para web.



Para instalar Brackets primero debemos acceder a la siguiente pagina de internet:


Posteriormente seleccionamos el botón de  "Download Brackets":



Al seleccionar el botón comenzara la descarga automática. Una ves que el programa se termino de descargar, le damos doble click para comenzar la instalación y se mostrara la siguiente ventana:



 Presionamos el botón "Next" y nos mandara la siguiente ventana:



Presionamos la opción de "Install" y nos arrojara una ventana emergente donde nos preguntara si deseamos dejar que Brackets instale archivos en nuestro equipo, presionamos que si y comenzara la instalación. Al concluir con la instalación se mostrara por primera ves la interfaz de Brackets, que es la siguiente:



Y ahora ya contamos con Brackets listo para programar paginas web de manera rápida y sencilla:



Espero y este tutorial les sea de utilidad, cualquier duda no duden en comentarla por favor. Muchas gracias por visitar este tutorial.

Fuente:
http://html5facil.com/tips/brackets-io-un-editor-de-texto-open-source-por-adobe/ consultada el 07 de Julio del 2015.