mFOLFOX7, mFOLFOX7 + Bev, Capecitabina baja dosis continua + Bevacizumab

# Superficie corporal (BSA)
def f_BSA(Ta, Pe):
    # Calculo de la superficie corporal utilizando
    # de estatura en cms, y kg de peso
    BSA = (0.007184 * ((Ta)**0.725)) * (Pe ** (0.425))
    return BSA

def f_dosis_BSA(Dosis, BSA, Porcentaje):
    # Calculo de la dosis por m2 de superficie corporal,
    # e intensidad relativa en porcentaje
    f_dosis_BSA = Dosis * BSA * (Porcentaje/100)
    return f_dosis_BSA

def f_dosis_Kg(Dosis, Peso, Porcentaje):
    # Calculo de la dosis por m2 de superficie corporal,
    # e intensidad relativa en porcentaje
    f_dosis_Kg = Dosis * Peso * (Porcentaje/100)
    return f_dosis_Kg

def f_numero_ampollas (Presentacion, DosisTotal, NumeroDeAplicacionesCiclo):
    # NTAA = numerototaldeampollasrequerida
    NTAA = float (DosisTotal/Presentacion)
    if int(NTAA) != NTAA:
        NTAA = int(NTAA)+1
    NTAA = NTAA * NumeroDeAplicacionesCiclo
    return NTAA
def f_protocolo_droga_BSA (Droga1, DiaAdministracion1, ViaAdministracion1, Posologia1, Unidades1, Dosis1, PorcentajeDosis1, NumeroDeAplicacionesCiclo1, Presentacion1, Comentario1):
    DosisTotal1 = float(f_dosis_BSA(Dosis1, SuperficieCorporal , PorcentajeDosis1))
    NumeroDeAmpollasDia = f_numero_ampollas (Presentacion1, DosisTotal1, 1)
    NumeroDeAmpollasCiclo1 = NumeroDeAmpollasDia * NumeroDeAplicacionesCiclo1
    StrDroga1 = Droga1 + " " + Posologia1 + " " + str(Presentacion1)+ " " + Unidades1 + " "
    StrDroga1 = StrDroga1 + "# " + str(int(NumeroDeAmpollasCiclo1)) + " " + Posologia1 + ": " + str(int(DosisTotal1)) + " " + str(Unidades1) + " " + " "
    StrDroga1 = StrDroga1 + ViaAdministracion1
    print StrDroga1
    print Comentario1
def f_protocolo_droga_ABSOLUTO (Droga1, DiaAdministracion1, ViaAdministracion1, Posologia1, Unidades1, Dosis1, PorcentajeDosis1, NumeroDeAplicacionesCiclo1, Presentacion1, Comentario1):
    DosisTotal1 = Dosis1
    NumeroDeAmpollasDia = float(f_numero_ampollas (Presentacion1, DosisTotal1, 1))
    NumeroDeAmpollasCiclo1 = NumeroDeAmpollasDia * NumeroDeAplicacionesCiclo1
    StrDroga1 = Droga1 + " " + Posologia1 + " " + str(Presentacion1)+ " " + Unidades1 + " "
    StrDroga1 = StrDroga1 + "# " + str(int(NumeroDeAmpollasCiclo1)) + " " + Posologia1 +  ": " + str(DosisTotal1) + " " + str(Unidades1) + " " + " "
    StrDroga1 = StrDroga1 + ViaAdministracion1
    print StrDroga1
    print Comentario1
def f_protocolo_droga_Kg (Droga1, DiaAdministracion1, ViaAdministracion1, Posologia1, Unidades1, Dosis1, PorcentajeDosis1, NumeroDeAplicacionesCiclo1, Presentacion1, Comentario1):
    DosisTotal1 = float(f_dosis_Kg(Dosis1, Peso , PorcentajeDosis1))
    NumeroDeAmpollasDia = f_numero_ampollas (Presentacion1, DosisTotal1, 1)
    if int( NumeroDeAmpollasDia) !=  NumeroDeAmpollasDia:
         NumeroDeAmpollasDia = int(NumeroDeAmpollasDia)+1
    NumeroDeAmpollasCiclo1 = NumeroDeAmpollasDia * NumeroDeAplicacionesCiclo1
    StrDroga1 = Droga1 + " " + Posologia1 + " " + str(Presentacion1)+ " " + Unidades1 + " "
    StrDroga1 = StrDroga1 + "# " + str(NumeroDeAmpollasCiclo1) + " " + Posologia1 +  ": " + str(int(DosisTotal1)) + " " + str(Unidades1) + " " + " "
    StrDroga1 = StrDroga1 + ViaAdministracion1
    print StrDroga1
    print Comentario1
def f_protocolo_droga_BSACapecitabina (Droga1, DiaAdministracion1, ViaAdministracion1, Posologia1, Unidades1, Dosis1, PorcentajeDosis1, NumeroDeAplicacionesCiclo1, Presentacion1, Comentario1):
    DosisTotal1 = float(f_dosis_BSA(Dosis1, SuperficieCorporal , PorcentajeDosis1))
    NumeroDeAmpollasDia = f_numero_ampollas (Presentacion1, DosisTotal1, 1)
    NumeroDeAmpollasCiclo1 = NumeroDeAmpollasDia * NumeroDeAplicacionesCiclo1
    StrDroga1 = Droga1 + " " + Posologia1 + " " + str(Presentacion1)+ " " + Unidades1 + " "
    StrDroga1 = StrDroga1 + "# " + str(int(NumeroDeAmpollasCiclo1)) + " " + Posologia1 + ": " + str(int(DosisTotal1)) + " " + str(Unidades1) + " " + " "
    StrDroga1 = StrDroga1 + ViaAdministracion1
    print StrDroga1
    print Comentario1


Talla = int(raw_input("Estatura en centimetros?>>"))
Peso = int(raw_input("Peso en kilogramos?>>"))
SuperficieCorporal = f_BSA(Talla, Peso)
print "Superficie corporal: ", SuperficieCorporal, "metros cuadrados"
print



print "mFOLFOX7"
# FOLFOX6 (Oxaliplatino 85 mg/m2 d1,Folinato de calcio 400 mg/m2, Fluoruracilo 2400 mg/m2 dia 1-3), cada 15 dias
f_protocolo_droga_ABSOLUTO("Dexametasona", "1", "Intravenoso", "ampollas", "miligramos", 20, 100, 1, 4, "Premedicacion antiemetica")
f_protocolo_droga_ABSOLUTO("Ondansetron", "1", "Intravenoso", "ampollas", "miligramos", 16, 100, 1, 8, "Premedicacion antiemetica")
f_protocolo_droga_BSA("Oxaliplatino", "1", "Intravenoso", "ampollas" , "miligramos", 85, 100, 1, 50, "Administrar intravenoso en 2 horas")
f_protocolo_droga_BSA("Folinato", "1", "Intravenoso", "ampollas" , "miligramos", 400, 100, 1, 50, "Administrar intravenoso en 2 horas")
f_protocolo_droga_BSA("Fluoruracilo", "1", "Intravenoso - administrar segun indicaciones", "ampollas" , "miligramos", 2400, 100, 1, 500, "Administrar en infusion intravenosa de 46 horas")
print
print


print "mFOLFOX7-Bevacizumab"
# FOLFOX6-Bevacizumab (Oxaliplatino 85 mg/m2 d1,Folinato de calcio 400 mg/m2, Fluoruracilo 2400 mg/m2 dia 1-3, Bevacizumab 5 mg/kg d1), cada 15 dias
f_protocolo_droga_ABSOLUTO("Dexametasona", "1", "Intravenoso", "ampollas", "miligramos", 20, 100, 1, 4, "Premedicacion antiemetica")
f_protocolo_droga_ABSOLUTO("Ondansetron", "1", "Intravenoso", "ampollas", "miligramos", 16, 100, 1, 8, "Premedicacion antiemetica")
f_protocolo_droga_BSA("Oxaliplatino", "1", "Intravenoso", "ampollas" , "miligramos", 85, 100, 1, 50, "Administrar intravenoso en 2 horas")
f_protocolo_droga_BSA("Folinato", "1", "Intravenoso", "ampollas" , "miligramos", 400, 100, 1, 50, "Administrar intravenoso en 2 horas")
f_protocolo_droga_BSA("Fluoruracilo", "1", "Intravenoso - administrar segun indicaciones", "ampollas" , "miligramos", 2400, 100, 1, 500, "Administrar en infusion intravenosa de 48 horas")
f_protocolo_droga_Kg("Bevacizumab", "1", "Intravenoso", "ampollas" , "miligramos", 5, 100, 1, 100, "Administrar intravenoso en 90 minutos")
print
print


print "Capecitabina continua + Bevacizumab"
# Capecitabina (Capecitabina 1250 mg/m2 d1-21), Bevacizumab 7.5
if SuperficieCorporal < 1.4:
    print "Capecitabina comprimidos 500 miligramos # 63 (Sesenta y tres): Tomar 2 comprimidos via oral en las mananas, y 1 comprimido via oral en la tarde, dia 1 a 21, sin interrumpir."
if SuperficieCorporal >= 1.4 and SuperficieCorporal <= 1.45:
    print "Capecitabina comprimidos 500 miligramos # 74 (Setenta y cuatro): Tomar 2 comprimidos via oral en las mananas, y 2 comprimidos via oral en las tardes de Lunes, Miercoles y Viernes. En las tardes de Martes, Jueves, Sabados y Domingos tomar 1 comprimido. Sin interrumpir."
if SuperficieCorporal > 1.45 and SuperficieCorporal <= 1.75:
    print "Capecitabina comprimidos 500 miligramos # 84 (Ochenta y cuatro): Tomar 2 comprimidos via oral en las mananas, y 2 comprimido via oral en la tarde, dia 1 a 21, sin interrumpir."
if SuperficieCorporal > 1.75 and SuperficieCorporal <= 1.95:
    print "Capecitabina comprimidos 500 miligramos # 94 (Noventa y cuatro): Tomar 3 comprimidos via oral en las mananas de los Lunes, Miercoles y Viernes. Tomar 2 comprimidos via oral en las mananas de los Martes, Jueves, Sabados y Domingo. Tomar 2 comprimidos via oral en las tardes. Sin interrumpir."
if SuperficieCorporal > 1.95 and SuperficieCorporal <= 2.15:
    print "Capecitabina comprimidos 500 miligramos # 105 (Ciento cinco): Tomar 3 comprimidos via oral en las mananas y 2 comprimidos en las tardes, Sin interrumpir."
if SuperficieCorporal > 2.15 and SuperficieCorporal <= 2.35:
    print "Capecitabina comprimidos 500 miligramos # 115 (Ciento quince): Tomar 3 comprimidos via oral en las mananas, y 3 comprimidos via oral en las tardes de Lunes, Miercoles y Viernes. En las tardes de Martes, Jueves, Sabados y Domingos tomar 2 comprimidos. Sin interrumpir."
if SuperficieCorporal > 2.35 and SuperficieCorporal <= 2.5:
    print "Capecitabina comprimidos 500 miligramos # 126 (Ciento veintiseis): Tomar 3 comprimidos via oral en las mananas y 3 comprimidos en las tardes, Sin interrumpir."
f_protocolo_droga_Kg("Bevacizumab", "1", "Intravenoso", "ampollas" , "miligramos", 7.5, 100, 1, 100, "Administrar intravenoso en 90 minutos")
print
print

Comentarios