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

399
Visualizações
Diccionario con claves de tupla y dos listas como valores, donde se agrega un valor a solo una de las listas

Tengo un conjunto de enteros en forma de tupla que forman mis claves (a,b) . Necesito construir un diccionario donde, para cada clave, se coloque un valor (flotante) en una de las dos listas que actúa como valor de par:

 (a,b) : [x_list,y_list]

Estoy construyendo el diccionario a partir de un archivo txt donde cada línea tiene la tupla (a,b) y UNO de los valores de tipo x o y que deben agregarse a la lista. Sin embargo, no entiendo cómo se puede hacer esto.

Ser más preciso:

si el archivo txt contiene:

 15,17,x_type,-1.1 15,17,y_type,44 1,2,y_type,-0.38 15,17,y_type,5

el diccionario debe producir

 d: {(1,2): [[], [-0.38]] , (15,17): [[-1.1], [5,44]]

Lo que estoy intentando:

 example = ['15,17,x_type,-1.1','15,17,y_type,44','1,2,y_type,-0.38','15,17,y_type,5'] for _ in example: [a,b,val_type,val] = _.split(',') if val_type == 'x_type': d[(a,b)] = [val,] if val_type == 'y_type': d[(a,b)] = [,val]

La sintaxis permite [x,] , pero no [,y] . ¿Por qué?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Las listas pueden contener comas finales. [x,] es lo mismo que [x] . Para agregar a una lista anidada específica, seleccione la que desee por índice:

 if type == 'x_type': d[(a,b)][0].append(x) elif type == 'y_type': d[(a,b)][1].append(y)

Esto supone que crea una nueva lista anidada tan pronto como encuentra una clave:

 if (a, b) not in d: d[a, b] = [[], []]

Otro buen truco sintáctico es que cualquier cosa con comas en una expresión de indexación se interpreta como una tupla. Eso significa que puede escribir d[(a, b)] como d[a, b] .

over 4 years ago · Santiago Trujillo Relatório
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