python

Python y PostgreSQL: ejemplo de conexión y CRUD

En este post vamos a ver cómo conectar Python con el motor de base de datos PostgreSQL usando el módulo psycopg2 que cumple con la DB API 2.0.

La DB API 2.0 es una API común en la que se utilizan los mismos métodos, cambiando únicamente el driver; algo así como PDO en PHP.

Python y PostgreSQL – Ejemplo de conexión usando psycopg2

Vamos a hacer un CRUD con PostgreSQL usando Python, evitando inyecciones SQL.

Nota: todo el código está en mi GitHub.

Continue reading…

Conexión a SQL Server con Python y PyODBC (CRUD)

En este post vamos a conectar Python 3 a una base de datos de SQL Server a través del driver ODBC y el paquete PyODBC.

Haremos un CRUD para demostrar cómo se hacen las 4 operaciones básicas a una base de datos.

Para comenzar, recuerda:

Conectar SQL Server con Python usando PyODBC – CRUD

Nota: todos los archivos están en un repositorio de GitHub.

Continue reading…

Solución a “TabError: inconsistent use of tabs and spaces in indentation” en Python

Una de las cosas más molestas (pero gracias a la misma tenemos tantos memes de Python) de Python es el error de:

TabError: inconsistent use of tabs and spaces in indentation

No podemos poner una  tabulación extra, o una tabulación menos, porque el intérprete se está quejando.

Una posible explicación a esto es que copiamos y pegamos código de otro lugar en donde se usan espacios o tabulaciones intercambiadas o en un número distinto.

Esto no pasa con otro lenguaje, que yo sepa; pero bueno, vamos a ver dos soluciones para que ya no se genere este error y Python nos deje seguir programando.

Continue reading…

Unit testing con Python: realizar tests o pruebas de código Python

Las pruebas en el software son un aspecto importante; pues permiten verificar que nuestro código se ejecuta en la manera que debería y que con cada cambio que hacemos no rompemos otras cosas.

Python provee el framework unittest que realiza pruebas unitarias de nuestro código y tiene varios métodos para realizar pruebas de código.

Pruebas unitarias con Python y el framework unittest

Pruebas unitarias con Python y el framework unittest

Hoy veremos cómo realizar nuestros primeros tests con el framework unittest de Python, que ya viene instalado por defecto.

Continue reading…

Trabajar con JSON en Python 3

JSON y Python: codificar y decodificar

JSON se ha convertido en un estándar para el intercambio de datos, sobre todo en la web, pero también funciona en otras plataformas.

Debido a su flexibilidad y simplicidad está presente en la mayoría de lenguajes de programación.

Trabajar con JSON en Python 3

Trabajar con JSON en Python 3

Python 3 no podría ser la excepción, por ello es que hoy veremos cómo:

  1. Codificar diccionarios, listas, enteros, flotantes, etcétera con Python 3 y JSON
  2. Imprimir el JSON codificado o escribirlo en un archivo
  3. Decodificar una cadena de JSON
  4. Leer un archivo JSON y decodificarlo

Todo ello únicamente usando el módulo de json en Python 3, el cual ya viene incluido por defecto.

Continue reading…

Renombrar ejecutable de python3 a python en Linux Ubuntu

Renombrar comando python3 a python en Linux Ubuntu

En las versiones de Linux Ubuntu más recientes Python 3 ya viene preinstalado en la versión 2 y 3 (pues la versión 2, aunque es antigua, es usada por múltiples paquetes).

El problema se ve cuando queremos ejecutar un simple script de Python usando:

python script.py

(ya sé que también se puede con el Shebang pero eso es otra historia)

Si lo ejecutamos así se tomará a Python 2, y nosotros queremos Python 3; si lo queremos escribimos:

python3 script.py

Solo que es engorroso estar escribiendo “python3” cuando deberíamos escribir simplemente “python”.

Por ello es que hoy veremos cómo renombrar el ejecutable “python3” a “python” usando un alias; evitando así conflictos.

Continue reading…

Tablas de multiplicar en Python usando while

Tablas de multiplicar en Python usando ciclo while

Hoy vamos a ver cómo hacer una función en Python que imprima la tabla de multiplicar de un número. Recordemos que una tabla de multiplicar es aquella en donde se multiplica al número en cuestión por 1, luego por 2 y así hasta el 10.

Tablas de multiplicar en Python usando while

Tablas de multiplicar en Python usando while

Vamos a crear la función para que reciba cualquier número y a partir del mismo imprima la tabla de multiplicar, todo ello usando el ciclo while.

También podremos cambiar el límite para que imprima más allá del 10, pues lo definiremos en una constante.

Continue reading…

Leer e imprimir datos en Python 2

El uso de Python 2 sigue siendo constante, aunque ya no se recomienda y el soporte para el mismo dejará de estar disponible en una fecha muy cercana.

Sin embargo en ocasiones ya sea por curiosidad o porque estamos manteniendo código de Python 2 surge la duda de cómo leer datos por teclado y cómo imprimir datos en la terminal.

En este post vamos a ver cómo se hace en Python 2. Si tú usas Python 3 (cosa que deberías estar haciendo) entonces mira este post.

Continue reading…

Promedio de 5 materias en Python

Python: promedio de 5 calificaciones [Ejercicio resuelto]

Vamos a resolver otro ejercicio propuesto de Python para que ahora sea un ejercicio resuelto. El problema dice así:

Crear un programa en python que calcule el promedio de 5 calificaciones de un alumno. Al usuario debe solicitarle: nombre completo,  grado, grupo, nombre de las materias y la calificación de cada una.

Leeremos con input, haremos un ciclo while hasta leer el número de materias especificado en una constante y finalmente calcularemos resultados (dividiendo la sumatoria entre el número de materias) e imprimiremos.
Continue reading…

Python 3 - Días horas minutos y segundos que ha vivido una persona

Python | Días, horas, minutos y segundos que ha vivido una persona

Vamos a resolver un ejercicio en Python que pide la fecha de nacimiento de una persona y a partir de ella indica cuántos días, horas, minutos y segundos lleva viviendo al momento de ejecutar el script.

Para ello usaremos a datetime y haremos operaciones con fechas, algo relativamente sencillo.

Python 3 - Días horas minutos y segundos que ha vivido una persona

Python 3 – Días horas minutos y segundos que ha vivido una persona

También vamos a usar la función divmod para convertir los segundos a horas y minutos.

Nota: el código de la captura fue ejecutado el 25 de marzo a las 11 de la noche con 30 minutos.

Continue reading…