Obtener extensión de un archivo en Python 3

Obtener extensión de archivo en Python

A veces se requiere conocer la extensión de un archivo en el lenguaje de programación Python. No hay necesidad de implementar nuestras propias funciones (por ejemplo una que nos diga con qué subcadena termina una cadena) ni trabajar con cadenas.

Obtener extensión de un archivo en Python 3

Obtener extensión de un archivo en Python 3

Python ya provee una manera de conocer la extensión de un archivo en el módulo os.path. Hoy veremos cómo usar dicho módulo para extraer la extensión (pdf, mp3, etcétera) de un archivo.

(más…)

Eliminar clave de un diccionario con Python

Eliminar valor de diccionario en Python

Para adentrarnos más en el manejo de los diccionarios con Python hoy veremos cómo eliminar determinada clave de un diccionario; es decir, eliminar un dato de un diccionario.

Esto de los diccionarios se utiliza en WaterPy para mandar la ruta de la marca de agua y el directorio que se va a procesar.

Eliminar clave de un diccionario con Python

Eliminar clave de un diccionario con Python

Por eso es que hoy veremos una operación simple con Python: eliminar claves de un diccionario, y a su vez, eliminar los valores.

(más…)

Comprobar si diccionario tiene clave en Python

Comprobar si diccionario tiene determinada clave en Python

Los diccionarios en Python son útiles en muchas circunstancias. Por ejemplo, para eso de los args y kwargs, así como para usarlos como estructura de datos en donde se accede en un tiempo óptimo gracias a que podemos usar sus claves como índices para acceder a los mismos.

Comprobar si diccionario tiene clave en Python

Comprobar si diccionario tiene clave en Python

Hoy veremos algo muy simple en Python: comprobar si un diccionario tiene una clave, es decir, si tiene un dato en determinada clave o si cuenta con ella.

(más…)

Validar int en Python

Validar número entero y flotante (int y float) en Python

Para validar que la separación horizontal y vertical sean enteros en WaterPy, tuve que implementar una forma de saber si un número es entero en Python.

Eso es porque el número es cadena, pero no podemos estar seguros de que el usuario siempre escribirá un entero y hay que validar para saber si es un entero bien formado.

Validar int en Python

Validar int en Python

Por eso es que hoy veremos cómo validar o saber si un número es entero en Python. También veremos cómo saber si es un flotante y finalmente comprobar si una cadena tiene únicamente un punto.

(más…)

Posibilidad de posicionamiento de marca de agua con WaterPy

Presentando a WaterPy: una aplicación de escritorio para poner marcas de agua

Hoy vengo a presentar una aplicación de escritorio muy simple pero funcional en lo que realiza. Se trata de un software que hace una cosa: poner marcas de agua.

Entre sus principales características encontramos:

  • Open source (aquí el repositorio)
  • Multiplataforma gracias a que lo que usa es igualmente multiplataforma
  • Permite modificar la transparencia de la marca de agua
  • La marca de agua puede ponerse en cualquier posición de la imagen, es decir, en la esquina inferior, superior, etcétera. En modo horizontal se puede colocar en: izquierda, derecha o centro. Y en modo vertical arriba, abajo o en el centro.
  • Permite procesar directorios completos de imágenes, o una imagen
  • Da la posibilidad de agregar una separación entre los límites de la imagen

Veamos cómo fue que la hice y por qué la hice, así como un ejemplo de uso.

Nota: puedes descargarlo aquí.

(más…)

Constantes en Python 3

Las constantes son valores que permanecen intactos a través de la ejecución de un programa y que nadie puede modificar después de la primera asignación.

En Python (y Python 3) las constantes no existen pero pueden ser simuladas. Hoy veremos por qué usar una constante, cómo declararla y algunos usos que le podemos dar en Python.

En resumen, veremos cómo usar constantes en Python.

(más…)

Usar find e index para buscar posición de carácter en cadena con Python 3

Posición o índice de un carácter o subcadena en cadena de Python

Vamos a ver cómo obtener el índice numérico de un carácter o letra en una cadena de Python 3. No importa si lo que buscamos es un simple carácter o una subcadena, ambas formas serán cubiertas.

Usar find e index para buscar posición de carácter en cadena con Python 3

Usar find e index para buscar posición de carácter en cadena con Python 3

Los métodos de las cadenas que tiene Python para resolver este problema son dos: find e index. Vamos a explicar cómo se usa cada uno de ellos con ejemplos.

(más…)

Recorrer cadena usando Python

Leer o iterar cadena carácter por carácter en Python 3

Hoy veremos cómo iterar o recorrer una cadena en Python 3 carácter por carácter, o letra por letra si queremos verlo así.

Recorrer cadena usando Python

Recorrer cadena usando Python

Expondré 2 formas de hacerlo, la primera es usando un ciclo for pero sin índice, únicamente obteniendo el carácter. La segunda es recorrer una cadena letra por letra pero también llevar un registro del índice.

(más…)

Agregar assets a PyInstaller, resolver rutas y empaquetar

Pyinstaller parte 2: agregar assets, imágenes y archivos a ejecutable de Python

Ya ha pasado algún tiempo desde que escribí cómo empaquetar un archivo de Python en un ejecutable. No pensé que tuviera el impacto que tuvo, pero me da gusto al final de todo.

Agregar assets a PyInstaller, resolver rutas y empaquetar

Agregar assets a PyInstaller, resolver rutas y empaquetar

En fin, ahora aquí está la parte 2 en donde muestro cómo agregar assets a nuestro paquete. Por ejemplo, a veces es necesario agregar imágenes, canciones o cualquier archivo extra al empaquetar con pyinstaller.

Cabe mencionar que no fue nada fácil, ya que casi no encontré documentación sobre eso excepto en el sitio oficial.

(más…)

Leer archivos de texto con Python

Leer todo el contenido de un archivo o línea por línea en Python

Siguiendo con los tutoriales que tienen que ver con la lectura de archivos hoy llega el turno de Python. Vamos a ver cómo podemos leer el contenido de un archivo de texto de dos maneras: leer todo el contenido, o leerlo línea a línea.

Leer archivos de texto con Python

Leer archivos de texto con Python

El segundo enfoque es mejor para archivos grandes, pues lo lee línea por línea y evita cargar todo el archivo en memoria.

Con Python, es muy fácil leer archivos, con pocas líneas hacemos mucho.

(más…)

Explicación de args y kwargs en Python. Función promedio

Entendiendo *args y **kwargs en Python

En este post explicaré para qué sirven y cómo se usan los *args y **kwargs en las llamadas a las funciones de Python 3.

Explicación de args y kwargs en Python. Función promedio

Explicación de args y kwargs en Python. Función promedio

Esto permite llamar a funciones que reciben un número indefinido de argumentos; y también cuando necesitamos múltiples argumentos opcionales. Vamos a ver algunos ejemplos.

(más…)

Formatear y obtener fecha y hora actual en Python 3

Obtener y formatear fecha y hora actual en Python

En este post veremos dos cosas para trabajar con la fecha y hora en Python:

  1. Cómo obtener la fecha y hora actual, separada por año, mes, día, hora, minuto, segundo y microsegundos
  2. Formatear la fecha y hora en Python para que sea legible y amigable.
Formatear y obtener fecha y hora actual en Python 3

Formatear y obtener fecha y hora actual en Python 3

Veremos algunos formatos útiles, como “Miércoles, 19 de diciembre del 2018” o “2018/12/19“, también con la hora, por ejemplo “Miércoles, 19 de diciembre del 2018. 7:30 AM” o incluso únicamente la hora, por ejemplo, “11:30 PM” o “23:10:15

(más…)