[ Foro de Python ]

Ayuda Python principiante

18-Oct-2022 14:36
Invitado (Andres)
0 Respuestas

Nivel de potasio en sangre. Se tiene un diccionario con los valores de concentración de potasio en sangre ([K+]) de un grupo pacientes medidos antes de entrar a terapia de hemodiálisis. La clave es el nombre del paciente y el valor es la [K+] (en mmol/L). Además, se tiene una lista del tipo [valor1, valor2, valor3, valor4] con los distintos valores que clasifican la condición clínica en que están los pacientes, de acuerdo a las concentraciones de potasio en sangre ([K+]). Estos valores dependen del tipo de población (niños, adultos, etc.).
La condición clínica del paciente sigue el siguiente criterio de clasificación:
- Si el valor de [K+] es menor que valor1 indica 'hipokalemia crítica',
- Si es mayor o igual al valor1 y menor que el valor2 sería 'hipokalemia leve',
- Si está entre valor2 y valor3 (ambos inclusive) indica 'normal',
- Si es mayor que valor3 y menor o igual que valor4 es 'hiperkalemia moderada' - Valores mayores que valor4 sería 'hiperkalemia severa'.
Ejemplo de una lista con elementos [valor1, valor2, valor3, valor4] para un adulto de mediana edad: [2.0, 3.5, 5.2, 7.0]
Diseña una función nivelKsang(dK, lst) en que, dado un diccionario dK que tiene como clave el nombre de un paciente y como valor su nivel de [K+] en sangre, y una lista lst con 4 valores de clasificación, como los descritos, devuelva un diccionario que tenga como claves los nombres de los pacientes y como valores su clasificación, de acuerdo a los niveles de [K+] en sangre.
    >>> dK1 = {'Luis': 2.2, 'Carlos': 7.0, 'Laia': 4.0, 'Mikel': 5.5,
               'Jordi': 5.2, 'Anna': 3.6, 'Joe': 7.2}
    >>> ls1 = [2.0, 3.5, 5.2, 7.0]
    >>> dic = nivelKsang(dK1, ls1)
    {'Luis': 'hipokalemia leve','Carlos': 'hiperkalemia moderada',
     'Laia': 'normal', 'Mikel': 'hiperkalemia moderada',
     'Jordi': 'normal', 'Anna': 'normal', 'Joe': 'hiperkalemia severa'}




(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)