Python - Listas y Archivos consulta

 
Vista:
sin imagen de perfil

Listas y Archivos consulta

Publicado por anonymous (38 intervenciones) el 11/07/2021 02:58:22
Hola, estoy haciendo un ejercicio y se me presento un problema, la idea de este código es abrir un archivo texto, sacar la información que este tiene y crear listas, en formato baldosas, en la que cada baldosa puede tener N caminos, logre crear las listas de los caminos con cada lista de las baldosas al interior pero me lo piden en un formato en específico, que es este Camino(['S', 'O'], "verde"), además necesito sacar la cantidad de caminos del txt pero tampoco se como sacar todos, puesto que pueden estar en distintas posiciones, el archivo txt puede ser como los siguientes:

Ejemplo 1 de lo que puede contener el archivo:

2
3
F O azul
E S rojo
F N azul
2
O S azul
E N azul

Ejemplo 2 de lo que puede contener el archivo:

4
2
N O azul
E S azul
3
F O rojo
E F azul
N S azul
2
N O rojo
E S azul
3
N S azul
E F rojo
F O rojo

Explicacion archivo:

La primera línea es un número entero N, correspondiente al número de baldosas que serán creadas.
En las líneas que siguen, recibirás la información de las N baldosas. Para cada una de ellas, la primera línea será un segundo número entero M, indicando el número de caminos pertenecientes a esa baldosa.
La información de cada camino será entregada en una sola línea, separada por espacios:

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
def generar_mazo():
 
    caminos = []
    with open("baldosas.txt") as f:
 
        baldosas = [dato.strip() for dato in f.readlines()][1:]
 
    pos = 0
 
    while pos < len(baldosas):
 
        num_caminos = int(baldosas[0])
 
        camino = baldosas[1:num_caminos+1]
 
        caminos.append(camino)
 
        baldosas = baldosas[num_caminos+1:]
 
        pos = num_caminos
 
    return caminos
 
caminos = generar_mazo()
print(caminos)

Si alguien me pudiese ayudar y explicar como lo podría realizar se lo agradeceria un millon
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder