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 |
import csv import random def dividir_en_grupos(lista, tamano_grupo): random.shuffle(lista) # Mezclamos aleatoriamente la lista de palabras for i in range(0, len(lista), tamano_grupo): yield lista[i:i + tamano_grupo] def leer_palabras_desde_archivo(archivo): with open(archivo, 'r') as file: palabras = list(set(file.read().upper().split())) # Convertimos las palabras a mayúsculas y luego eliminamos las repetidas return palabras # Convertimos el conjunto nuevamente en una lista def escribir_grupos_en_csv(grupos, archivo_salida): with open(archivo_salida, 'w', newline='') as csvfile: writer = csv.writer(csvfile) writer.writerow(['palabras']) # Escribimos el encabezado de la columna for grupo in grupos: registro = ' '.join(grupo) # Concatenamos las palabras del grupo en un solo registro writer.writerow([registro]) # Escribimos el registro en el archivo CSV def main(): archivo_entrada = '19.txt' # Reemplaza 'palabras.txt' con el nombre de tu archivo de entrada archivo_salida = '19.csv' # Nombre del archivo CSV de salida palabras = leer_palabras_desde_archivo(archivo_entrada) grupos = list(dividir_en_grupos(palabras, 10)) escribir_grupos_en_csv(grupos, archivo_salida) print("Grupos de palabras escritos en el archivo CSV con éxito.") if __name__ == "__main__": main() |