Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

398
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!