Python - Ayuda con ejercicio de Python

 
Vista:
sin imagen de perfil

Ayuda con ejercicio de Python

Publicado por Marcela (3 intervenciones) el 21/05/2022 23:55:04
Hola a todos,

Alguien experto en Python para que me ayude con este ejercicio. Adjunto el documento. Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Ayuda con ejercicio de Python

Publicado por Marcela (3 intervenciones) el 22/05/2022 05:48:56
Asi lo cree, pero no me funciona

def modificar_materia(pensum, semestre, materia, nombre, creditos):
pensum = [
{"0123" : {"créditos" : 2, "nombre" : "intro a la ing"}},
{"4567" : {"créditos" : 1, "nombre" : "inglés"}},
{},{},
]
mensaje = ""
if semestre > len(pensum)) or semestre == 0):
mensaje = "Ingrese un semestre válido"
elif semestre <= len(pensum):
if pensum[semestre-1] != {} :
for e in pensum [semestre-1]:
if materia == e:
pensum[semestre-1][materia]["nombre"] = nombre
pensum[semestre-1][materia]["créditos"] = creditos
mensaje = "Modificada con éxito"
break
elif materia != e:
mensaje = "La materia no existe"
break
elif pensum[semestre-1] == {}
mensaje = "El semestre no tiene materias"
return mensaje
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda con ejercicio de Python

Publicado por Yimmy Leandro (1 intervención) el 03/06/2022 19:18:50
Hola, con este código saque 4 en la calificación del vpl, el punto que me falto fue ordenar el diccionario con lso datos valido que tiene el programa, yo puse los codigos y materias que quise, por eso no me dio el 5.

PD, si encuentras una solución para el del clima me avisas no he podido con ese


# es todoas las funciones anteriores en una
def modificar_materia(pensum, semestre, materia, nombre,creditos):
if verificador_semestre(pensum, semestre) == True:
if verificador_dicsem(pensum, semestre) == True:
if verificador_codmateria(pensum, semestre, materia) == True:
return modificador(pensum, semestre, materia, nombre, creditos)
else:
return 'La materia no existe'
else:
return 'El semestre no tiene materias'
else:
return 'Ingrese un semestre válido'

m101 = {'nombre': 'intro a la ing', 'creditos': 2}
m102 = {'nombre': 'ingles', 'creditos': 1}
m103 = {'nombre': 'fundamentos de programacion', 'creditos': 3}
m201 = {'nombre': 'programacion1', 'creditos': 3}
m202 = {'nombre': 'ingles2', 'creditos': 1},
m203 = {'nombre': 'matematicas1', 'creditos': 2}
m301 = {'nombre': 'programacion2', 'creditos': 3}
m302 = {'nombre': 'matematicas2', 'creditos': 2}
m303 = {'nombre': 'ingles3', 'creditos': 1}
m4 = {}

s1 = {'101': '0123', '102': '4567', '103': m103}
s2 = {'201': m201, '202': m202, '203': m203}
s3 = {'301': m301, '302': m302, '303': m303}
s4 = {}

listapensum = [s1,s2,s3,s4]

#valida que el semestre exista en lista pensum[]
def verificador_semestre(pensum, semestre):
ver_sem = []
for i in range(len(pensum)):
ver_sem.append(i+1)
if semestre in ver_sem:
return True
return False

#valida diccionarios de semestre s1,s2,s3,s4 y busca cual es vacio
def verificador_dicsem(pensum, semestre):
j = semestre-1
if pensum[j] == {}:
return False
return True

#despues de mandarse a un diccionario no vacio, valida que las claves
#correspondan o coincidan
def verificador_codmateria(pensum, semestre, materia):
j = semestre - 1
if materia in pensum[j]:
return True
return False

#va al listado, clave, materia, cambia nombre y creditos
def modificador(pensum, semestre, materia, nombre, creditos):
j = semestre - 1
# creo otro diccionario
dic_up = {'nombre': nombre, 'creditos': creditos}
pensum[j][materia].update(dic_up)
return 'Modificada con éxito'



pensum = (input('Pensum: '))
semestre = (input('Semestre: '))
materia = input('Materia: ')
nombre = input('Nombre: ')
creditos = int(input('Creditos: '))
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar