Validacion de CUIT en Python
1Debido a un proyecto personal que estoy encarando me tope con tener validar una CUIT (Clave Única de Identificación Tributaria) y en ese tiempo libre que le dedique a esta cuestión decidí adornar un poco el código y compartirlo con ustedes si es que algún día deben encarar este mismo problema.
El porque del nombre:
El nombre lo tome del nombre de la función implementada en JavaScript en la pagina de la AFIP para verificar la validez de una CUIT y como resulta muy intuitivo y fácil de recordar decidí utilizarlo y espero que esto no genere conflictos los programadores de la AFIP
.
Gran parte del código son comentarios y reglas de validación.
(más…)
Se anade el widget Entry
1Les aviso que el desarrollo de la guía continua en esta oportunidad pueden encontrar sobre el widget Entry, aunque el avance de la guía no va al ritmo que me gustaría que tuviera pero sigo dando batalla y creando nuevo contenido para la misma. Puede que resulte un tanto repetitivo pero cualquier aporte siempre es bienvenido.
Me despido y nos veremos cuando haya nuevos avances en la guía.
hace 4 meses
Para los que deseen seguir el avance de la guía de una forma mas visual sin tener que bajar los archivos fuentes de la misma pueden hacerlo desde la pagina Guia Tkinter. Desde allí podrán ver la ultima versión generada en HTML de la guía.
Segui mis avances con la guia de Tkinter
1
Para todos los que deseen seguir mis avances en la guía de Tkinter les dejo unas pequeñas instrucciones como para que puedan empezar a seguirme en el desarrollo de la guía.
La guía como les había comentado en “http://www.codigopython.com.ar/?p=214” va ir siendo almacenada en los servidores de GitHub en sus repositorios Git como si se tratara del desarrollo de una aplicación, en ellos iré subiendo periódicamente los cambios y avances que vaya realizando. Para descargar una copia de la guía y todos los archivos que la complementan así como las imágenes, las podemos obtener haciendo click en el siguiente enlace en donde se generara un archivo .zip donde estarán contenidos los archivos mencionados
https://github.com/eliluminado/Guia-Tkinter/zipball/master
Otra forma un poco mas compleja pero mas útil es teniendo en nuestra PC instalado Git para así poder crear una copia del repositorio y con unas simples ordenes desde la consola actualizar los archivos a sus ultimas versiones. Para esto deberán tener como mencione instalado Git (Pueden encontrar varias guías de instalación en la web) y desde la consola escribir los siguiente:
git clone git://github.com/eliluminado/Guia-Tkinter.git DIRECTORIO
Donde se tiene que reemplazar la palabra ‘DIRECTORIO’ por el nombre de la carpeta donde desean crear la copia de los archivos.
Con esto hecho ya obtendrán una copia de los archivos, para actualizarlos deberán escribir en la consola:
git pull
Cualquier duda que tengan pueden dejar su comentario aqui y se los respondere.
Saludos y nos estaremos viendo en otro post
Trabajando en mi primer guia sobre Tkinter
3Después de mucho tiempo inactivo sigo aprendiendo sobre Python esta vez le toca el turno a Tkinter, pero en el camino me tope con que no hay mucha información sobre este en español, que mientras en ingles encontramos guiás y tutoriales muy buenos en nuestro idioma no es así. Que mejor para solventar este inconveniente que crear una guiá en español OpenSource, en donde iré compartiendo el ‘código fuente’ de la guiá hasta que la termine y la publique tanto en este blog así como en la wiki [wiki.codigopython.com.ar].
Todos los que deseen colaborar o hacer sus comentarios pueden ponerse en contacto conmigo dando su comentario en este post o escribiéndome a:
contacto@codigopython.com.ar
Para consultar la guiá pueden hacerlo desde mi repositorio en GitHub y ver como va avanzando, si lo desean también pueden colaborar desde allí con su desarrollo.
https://github.com/eliluminado/Guia-Tkinter
Para los que desean colaborar van a notar que use varios símbolos y caracteres, esos caracteres sirven para proveer de un formato al texto y gracias a txt2tags luego poder convertir ese texto a a por ejemplo HTML. Los que estén interesados en colaborar pueden pasar por la pagina de txt2tags para buscar mas información sobre el tema
Me despido y los iré manteniendo al tanto de mis avances.
Aceptando parametros desde la linea de comandos
4Bienvenidos a la ya 4ª parte de esta serie de tutoriales, les recuerdo que en los tres anteriores tutoriales creamos tres funciones, las cuales nos permitían ocultar y desolcultar archivos además de una tercera que nos permitía obtener el estado en que se encontraba dicho archivo. En esta oportunidad les mostrare usando a PyHide (Pueden encontrar mas información sobre este proyecto aquí http://wiki.codigopython.com.ar/pyhide) como interactuar con el usuario a través de la linea de comandos aceptando el uso de argumentos, un ejemplo de esto es el uso del comando ‘cd‘ (este comando nos permite cambiar el directorio de trabajo que estamos utilizando) en Linux este acepta un argumento que es el directorio con el que deseamos trabajar, algo similar deberemos de implementar en nuestra aplicación para facilitar su uso pero para esto planteemos cuales serán lo pasos que tendremos que tener en cuenta para conseguirlo
1 – El usuario ejecuta nuestra aplicación con un argumento
2 – Se analizan los argumentos ingresados
3 – Se ejecuta la función ‘hide‘, ‘show‘ o ‘check‘ según corresponda
Eso es una breve descripción de la meta que nos proponemos a lo largo del tutorial, ahora si empecemos por el principio de esto. El primer inciso que nos planteamos implica que nuestra aplicación soporte el uso de argumentos para funcionar, en un principio nuestras funciones ya toman un argumento que es el archivo que se utilizara pero nuestra aplicación va a necesitar dos argumentos uno para indicar el archivo y el otro para indicar la acción ha realizar, es decir si se llama a ‘hide‘ o a ‘show‘, pero veamoslo con un ejemplo. (más…)
Analizando el estado de los archivos
5En las primeras dos partes de esta serie de tutoriales estuvimos viendo como ocultar archivos y como revertir esto utilizando dos funciones una era ‘hide‘ y la otra ‘show‘, con estas dos podemos hacer lo que necesitamos pero quizás nos guste poder obtener el estado en que se encuentre un archivo para por ejemplo poder utilizarlo dentro de nuestra aplicación para informarle al usuario el estado del archivo sin realizar ninguna acción sobre el mismo, para esto crearemos a ‘check‘ una función que se encargara de esto. La creación de ‘check‘ sera algo que no nos llevara mucho tiempo ni esfuerzo porque su construcción se basa en lo que ya vimos, hasta ahora tenemos dos funciones como estas:
def hide(file):
import os
if not os.path.exists(file):
return
archive = os.path.basename(file)
directorio = os.path.dirname(file)
if archive[0] == '.':
return
else:
newfile = directorio+'/''.'+archive
os.rename(file, newfile)
def show(file):
import os
if not os.path.exists(file):
return
archive = os.path.basename(file)
directorio = os.path.dirname(file)
if archive[0] != '.':
return
else:
while archive[0] is '.':
archive = archive[1:]
newfile = directorio+'/'+archive
os.rename(file, newfile)
Antes de comenzar a escribir nuestra función debemos plantear que es lo que deseamos conseguir y como lo venimos haciendo pasemos a enumerar las cosas que haremos para conseguir desarrollar esta pequeña pero útil función.
1 – Entra como parámetro un archivo
2 – Se verifica si el archivo se encuentra oculto (más…)
Mostrando archivos ocultos en GNU/Linux
4En la primera parte de esta serie de tutoriales “Ocultando archivos en GNU/Linux“, les había mostrado una pequeña pero funcional aplicación para ocultar archivos en Linux pero en esta parte vamos a ampliar un poco sus funciones agregando una nueva función que realice todo lo contrario a lo que logramos hasta ahora, con esto me refiero a que en vez de ocultar archivos podamos mostrar archivos ocultos, lo cual seria en nuestro caso una herramienta para revertir las acciones realizadas por nuestra función ‘hide‘.
Antes de ponernos a jugar con Python debemos dejar en claro que es lo que queremos lograr tal cual lo hicimos en la primer parte del tutorial, empecemos enumerando las principales funciones que deberá de cumplir nuestro script:
- Entra como parámetro un archivo
- Si no esta oculto no se realizaría ninguna acción
- Si esta oculto quitamos el punto que tiene en el nombre
Como nos daremos cuenta la primera parte se mantiene, la segunda es muy similar a la de la función ‘hide‘ ya creada solamente que esta otra función tiene la diferencia de que verifica que el archivo no se encuentre oculto. Hasta acá es todo muy similar pero la perspectiva nos cambia cuando llegamos al punto 3 de nuestra lista, pero lo mejor es ir un paso a la ves así que lo mejor va a ser empezar por ir a la primer parte de esta lista.
(más…)
Ocultando archivos en GNU/Linux
2Una de las facilidades que nos ofrece lo sistemas basado en Unix es su facilidad para configurarlo sin tener que tocar un gran y sobrecargado registro (haciendo referencia a Microsoft Windows) sino que modificando simple archivos de texto podemos ajustar las preferencias de nuestros programas o de nuestro sistema, un ejemplo de esto es la forma como se oculta un archivo y/o carpeta en los sistemas basado en Unix porque simplemente anteponiendoles un punto al nombre del archivo este se vuelve un archivo oculto para el sistema. Viendo esta facilidad para ocultar un archivo en nuestra distribución Linux, practiquemos un poco con Python creando un pequeño pero funcional script que oculte un archivo.
Comencemos planteando como llevar nuestra necesidad de ocultar un archivo en GNU/Linux con Python, por ahora tenemos dos cosas como para comenzar una es que nuestra función tiene que tomar un archivo como parámetro para funcionar y la otra es como se oculta un archivo, llevándolo al papel nos quedaría algo así como para orientarnos en la construcción de la función:
- Entra como parámetro un archivo
- Si ya esta oculto no se realizaría ninguna acción
- Si no esta oculto colocamos como primer carácter en el nombre un punto
Habiéndolo planteado empecemos por el punto numero 1, nuestro Linux no discrimina si se trata de un archivo o de una directorio utiliza el mismo método para ocultarlos así que comprobar con que estamos trabajando podemos dejarlo de lado por un momento, algo que si es importante es que obviamente el archivo debe existir. Para comprobar la existencia del archivo podemos tomar como referencia lo visto en “Tres formas de comprobar la existencia de un archivo” utilizando la primer forma, ya que como mencione no estamos discriminando si se trata de un archivo o una carpeta y no tendría ningún sentido utilizar la segunda forma. La primer forma para comprobar la existencia de un archivo que vimos fue esta:
Una víbora hecha en Python
7Buenas…. Después de un rato publico algo de código. Titulo obvio, no?
Cuando queremos aprender a programar lo primero que queremos hacer es un juego. Simple. Ponemos en google “juegos en python” o alguna estupidez así y que encontramos?
Pygame es un conjunto de módulos del lenguaje Python que permiten la creación de videojuegos en dos dimensiones de una manera sencilla.
Es excelente, pero no lo voy a usar acá. Por que? Porque soy molesto y Python así como esta, es lo suficientemente poderoso como para hacer juegos.
Obviamente alguna interfaz grafica para hacerlo mas simple siempre se necesita.
Bueno, basta de introducción. El código se auto explica con los comentarios. (más…)