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

3 dic 2010

Número aleatorio en Python

Este programa que hice fue a partir de un juego un poco más complejo, que te hace elegir un número entero, el que tu quieras, y la computadora elige otro aleatoriamente.

Estos dos números se suman, y si el número sumado es par, el usuario será el ganador, en caso contrario será la computadora quien habrá ganado.

El código.

#!/usr/bin/python

import random

numero = input("Escribe tu numero >> ")
cpu = random.choice(range(10))

valor = cpu + numero

print "\nEl numero elegido por la computaora es", cpu
print "La suma de los numeros es", valor

if (valor % 2 == 0):
    print "\nEs par - Has ganado"
else:
    print "\nEs impar - Perdiste, gana la computadora"

Explicación.

#!/usr/bin/python
La ruta donde se encuentra nuestro intérprete, la podemos buscar con which python.

import random
Agregamos la Liberia random que nos permitirá obtener números aleatorios.

numero = input("Escribe tu numero >> ")
Recibimos el número elegido por el usuario, almacenado en la variable número.

cpu = random.choice(range(10))
Obtenemos un número aleatorio que sea menor a 10, y lo almacenamos en la variable cpu.

valor = cpu + numero
Sumamos estos dos números para obtener el valor que veremos si es par o no.

print "\nEl numero elegido por la computaora es", cpu
print "La suma de los numeros es", valor

Mostramos el número aleatorio elegido por la computadora y la suma de los dos números.

if (valor % 2 == 0):
print "\nEs par - Has ganado"

Para saber si es par o no, obtenemos el módulo de dos, si el resultado de esto es cero, significa que si es par, y mostramos que ganó.

else:
print "\nEs impar - Perdiste, gana la computadora"

En caso contrario de que no se cumpla la condición anterior, es decir, que no fue par, mostramos que perdio.

Veamos una imagen de su ejecución.


Enlace: Obtener números pseudo aleatorios en Python

2 dic 2010

AWK

AWK es un lenguaje de programación creado con la finalidad de procesar datos basados en texto.

"AWK es ejemplo de un lenguaje de programación que usa ampliamente el tipo de datos de listas asociativas, y expresiones regulares."

Cree un pequeño programa que es de gran ayuda para cuando queremos colocar código HTML en nuestro blog, mediante la edición HTML. Como les mencione en una de mis publicaciones, la posibilidad de colocar código en nuestro blog, y sin que pierda formato se puede colocar entre las etiquetas <:pre> ... <:/pre>, pero hay un problema con esto, ya que si copiamos y pegamos el código tal cual de nuestro archivo html que deseamos mostrar, el cuadro de edición de nuestro blog nos mostrará un mensaje de que no esta permitido el uso de ciertas etiquetas, por ejemplo la de html, head y body, son unas de las que no podemos colocar tal cual las tenemos en un archivo en HTML.

Por si no les ha pasado, les muestro con la siguiente imagen el problema.

Y ahora les muestro la forma de corregir esto, que es cambiando la apertura y cierre de etiqueta, cambiando por el código que representa ese carácter.

Pero cambiar uno por uno los signos "<" y ">" de nuestro código HTML, sería demasiado tardado para una página un tanto extensa.

Por eso cree este pequeño script en AWK que nos cambia estos dos caracteres por su correspondiente representación.

El código es el siguiente:
#!/usr/bin/awk -f
{
gsub("<","\\<");
gsub(">","\\>");
print $0
}
En pocas palabras lo que hace es de un archivo de entrada, en este caso un archivo html, cambia los signos por su correspondiente, y el html nuevo es guardado en un archivo diferente.

Veamos un ejemplo de ejecución:
Como vemos el archivo de entrada es el index.html, y como salida pido que se cree un archivo llamado nuevo.html que será el que ahora fue editado.

Este es el archivo index.html que necesito cambiar:

Este es el archivo nuevo.html creado:

Ahora a partir de este último archivo ya puedo copiar y pegar código para mis entradas en el blog, sin perder tanto tiempo.

Se que el código es muy simple, pero sirve.