Comprobación de la presencia de elementos de lista en una cadena en Python
Una tarea común en la programación de Python es verificar si una cadena incluye un elemento de un determinado lista. Un enfoque tradicional emplea un bucle for, como se ejemplifica en el siguiente código:
extensionsToCheck = ['.pdf', '.doc', '.xls']
for extension in extensionsToCheck:
if extension in url_string:
print(url_string)
Aunque es funcional, este método puede parecer engorroso. Un enfoque más conciso implica utilizar un generador junto con la función any(), que evalúa sus argumentos hasta encontrar el primer Verdadero:
if any(ext in url_string for ext in extensionsToCheck):
print(url_string)
Usar formato de cadena
Alternativamente, si el orden de los elementos en la lista es importante, se puede emplear el formato de cadena. Por ejemplo:
url_string = 'sample.doc'
extensionsToCheck = ['.pdf', '.doc', '.xls']
if f'.{url_string.split(".")[-1]}' in extensionsToCheck:
print(url_string)
Aquí, el método .split() separa la cadena URL según el punto, y el índice [-1] selecciona el último elemento, que representa la extensión del archivo. Luego, la cadena f formatea la extensión en la forma correcta para comparar.
Nota: El uso de any() en este contexto solo verifica si algún elemento de la lista está presente en la cadena, independientemente de su posición. Si la ubicación específica del elemento es importante, se deben considerar métodos más precisos, como funciones de manipulación de cadenas o expresiones regulares.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3