-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathr.py
44 lines (33 loc) · 1.57 KB
/
r.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
def limpiar_lista_canciones(ruta_archivo):
with open(ruta_archivo, 'r', encoding='utf-8') as archivo:
# Leer todas las líneas del archivo
lineas = archivo.readlines()
# Lista para guardar los nombres de las canciones
nombres_canciones = []
# Recorrer cada línea en el archivo
for linea in lineas:
# Limpiar la línea de espacios al inicio y al final, y de saltos de línea
linea_limpia = linea.strip()
# Verificar que la línea no esté vacía y que no sea una línea de letra de sección
if linea_limpia and not linea_limpia.isalpha():
# Añadir la línea limpia (nombre de la canción) a la lista
nombres_canciones.append(linea_limpia)
return nombres_canciones
import re # Importa el módulo de expresiones regulares
def limpiar_nombres_canciones(lista_canciones):
# Patrón para encontrar texto entre paréntesis
patron = r'\s*\([^)]*\)'
# Lista para almacenar los nombres limpios de las canciones
nombres_limpios = []
# Iterar sobre cada nombre de canción en la lista
for cancion in lista_canciones:
# Reemplazar los paréntesis y su contenido con una cadena vacía
nombre_limpio = re.sub(patron, '', cancion)
# Añadir el nombre limpio a la lista de nombres limpios
nombres_limpios.append(nombre_limpio.strip())
return nombres_limpios
# Usar la función y pasar la ruta del archivo
ruta = 'cancMaluma.txt'
lista_canciones = limpiar_nombres_canciones(limpiar_lista_canciones(ruta))
print(len(lista_canciones))
print(lista_canciones)