python

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

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.

Extraer extensión de archivo usando Python

Como lo dije hace un momento, lo que nos permite saber la extensión de un archivo está en os.path así que importamos al módulo:

import os.path

La función que nos ayuda se llama splitext, que quiere decir “split extension“, o sea, separar la extensión. Este método recibe una cadena indicando la ruta del archivo, ya sea relativa o absoluta; y devuelve una tupla (dos variables).

El primer valor de la tupla es el nombre del archivo, y el segundo es la extensión. Por lo que la sintaxis es:

nombre_archivo, extension = os.path.splitext("nombre_o_ruta_de_archivo.extension")

En caso de que el archivo no tenga extensión, se devuelve una cadena vacía.

Ejemplo de uso de os.path.splitext para obtener extensión

Aquí algunos ejemplos con la shell de Python:

Como vemos, no es necesario mandarle una ruta absoluta o relativa; con una simple cadena funciona. Eso sí, en caso de mandarle una ruta compleja también sabrá separar el nombre y la extensión.

Ejemplos de uso de splitext

Finalmente aquí dejo algo de código que prueba con distintas cadenas para que nos demos una idea de cómo trabaja con los nombres que no tienen extensión:

See the gist on github.

Por cierto, puedes probar el código a continuación:

También puedes descargar el ejemplo, Instalar Python y luego ejecutar python main.py para ejecutarlo. Te invito a conocer más sobre Python aquí.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Ver comentarios

Entradas recientes

Imprimir PDF con Bot de Telegram

La impresión de un PDF en cualquier impresora se puede automatizar con un bot de…

2 días hace

Enviar mensaje con bot de Telegram usando JavaScript (lado del cliente)

Hoy te enseñaré cómo enviar un mensaje a un usuario desde un bot de Telegram…

3 días hace

PHP: incrustar imagen en base64

El día de hoy te enseñaré algo muy sencillo pero útil al programar con PHP:…

3 días hace

Plugin ESC POS – Actualización 3.4.0: imprimir HTML

El plugin para imprimir en impresoras térmicas alcanza hoy su versión 3.4.0 agregando soporte para…

4 días hace

JavaScript (lado del cliente): leer pixeles de imagen

En ocasiones es necesario leer los pixeles y colores de una imagen con JavaScript del…

2 semanas hace

PHP y JavaScript: llenar select con AJAX

Siguiendo con los tutoriales de listas desplegables o select con JavaScript, vamos a ver cómo…

2 semanas hace

Esta web usa cookies.