Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

178
Visualizações
Lista de rutas al diccionario de diccionarios con lista de archivos como valores en nodos hoja

He estado tratando de usar una lista de rutas para implementar un TreeView en un sitio web con componentes Material UI.

Usé el código que se encuentra en el componente TreeView en MUI aquí https://mui.com/material-ui/react-tree-view/#rich-object

Pero solo tengo una lista de rutas como esta:

 dirs = ['path/to/file/file1.txt', 'path/to/file/file2.txt', 'path/to/another_file/file3.txt']

Y quería llegar a una estructura que se ve así

 {'path': {'to': {'files12': ['file1.txt', 'file2.txt']}, 'file3': 'file3.txt'} } }

Para usar eso con mi función en React, de alguna manera me puse a trabajar hasta que se rompió en el nodo hoja, porque el diccionario que estaba usando era el creado aquí https://stackoverflow.com/a/58917078/9790150 que lee los nodos hoja para siempre y alcanzó el tamaño máximo de la pila de llamadas.

A continuación se muestra lo mejor que pude hacer que mi función dentro de mi página funcione

 const renderTree= (my_dict) => ( <TreeItem key={Object.keys(my_dict)[0]} nodeId={Object.keys(my_dict)[0]} label ={Object.keys(my_dict)[0]}> {Array.isArray(Object.values(my_dict)) ? Object.entries(my_dict).map((node) => renderTree(node)) : null} </TreeItem> );

. Nota: La función anterior no está completa. Es justo donde tengo hasta ahora.

Puedo proporcionar más aclaraciones según sea necesario porque todavía no entiendo las cosas por completo.

Así que TL;DR

Necesito una forma de convertir una lista de rutas en el formato de estructura que se encuentra en el ejemplo de TreeView que se ve así:

 const data = { id: 'root', name: 'Parent', children: [ { id: '1', name: 'Child - 1', }, { id: '3', name: 'Child - 3', children: [ { id: '4', name: 'Child - 4', }, ], }, ], };

Lo cual parece demasiado complicado de hacer en Python o Javascript, ya que lo más probable es que pueda crear una función que funcione con la segunda opción ->

Una forma de convertirlo en un diccionario de diccionarios como se muestra arriba en mi resultado deseado

Agradezco cualquier sugerencia sobre cómo debería crear lo que quiero de una manera más fácil.

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda