Python - Ayuda proyecto basico python

 
Vista:
sin imagen de perfil

Ayuda proyecto basico python

Publicado por Dylan (2 intervenciones) el 13/04/2022 00:30:37
Debo realizar este , y necesito ayuda para realizarlo ya que me encuentro en examenes de parcial y el profesor no se compadecio de nosotros
Dada la siguiente estructura:
estudiantes = {"estudiante_X": {"cursos": {"c1":0,"c2":0},"nombre" : "...", "direccion" : "....","telefono" : "....", "email" : "..."} }
donde:
• estudiante_X: corresponde al carnet del estudiante.
• c1,c2,…,cN: corresponde a los nombres del cursos que el estudiante matriculó, mientras que
su valor corresponde a la nota (0 cuando lo matricula y un número entre 1 y 10 reflejando el
resultado final).
• nombre: corresponde con el nombre de ese estudiante.
• direccion: corresponde con la dirección del estudiante.
• telefono: corresponde con el teléfono de el estudiante.
• email: corresponde con el email del estudiante.
Construya un programa que ejecute operaciones de CRUD (C:Create, R:Read, U:Update,
D:Delete) que permita:
1. Crear un nuevo estudiante o un nuevo curso para un estudiante.
2. Leer la información de todos los estudiantes, de un estudiante en particular o los cursos de
un estudiante específico.
3. Actualice la información de un estudiante (nombre, dirección, teléfono o email) o la nota de
un curso para un estudiante.
4. Elimine la información de un curso para un estudiante o aún un estudiante completo.
5. El programa debe tener un menú que se ejecute hasta que se seleccione la opción de terminar.
La información debe ser persistente, por lo que no dependerá de una ejecución específica, sino que
se mantendrá en archivos que se puedan reutilizar. Se recomienda el uso de archivos shelve.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
-2
Responder
Imágen de perfil de Francisco Javier
Val: 249
Ha aumentado su posición en 29 puestos en Python (en relación al último mes)
Gráfica de Python

Ayuda proyecto basico python

Publicado por Francisco Javier (313 intervenciones) el 17/04/2022 19:34:24
Buenas lo que pides es esntretenido ir creando funciones de cada opcion e ir saltando por los menus, una vez creado el esqueleto puedes ir mejorando la funcionaldad e ir decorando los resultados, te mando un avance y te animo a que lo termines y lo publiques de nuevo por aquí, salu2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#EJERCICIO NUEVO
 
estudiantes1 = {"estudiante_X": {"cursos": {"c1":0,"c2":0},"nombre" : "...", "direccion" : "....","telefono" : "....", "email" : "..."} }
estudiantes={}
cursos_matriculados={}
def actualiza_informacion():
    pass
def actualiza_curso():
    pass
def lee_curso_estudiante():
    estudiante=input('Escribe el carnet del estudiante: ')
    keys= estudiantes.keys()
    if estudiante in keys:
        valor = estudiantes.get(estudiante).get('cursos')
        print(valor)
def lee_un_estudiante():
    estudiante=input('Escribe el carnet del estudiante: ')
    keys= estudiantes.keys()
    if estudiante in keys:
        print(estudiantes[estudiante])
def leer_estudiantes():
    for x, y in estudiantes.items():
        print(x, y)
def crear_nuevo_curso():
    curso=input('nombre del curso a matricular: ')
    nota=int(input('Escribe resultado final del curso entre 1 y 10 o 0 si está recien matriculado: '))
    cursos_matriculados[curso]=nota
def crear_ficha():
    carnet=input('Escriba su numero de carnet de estudiante: ')
    n_cursos=int(input('¿Cuántos cursos son los que se ha matriculado? '))
    for i in range (0,n_cursos):
        curso=input('nombre del curso a matricular: ')
        nota=int(input('Escribe resultado final del curso entre 1 y 10 o 0 si está recien matriculado: '))
        cursos_matriculados[curso]=nota
    nombre=input('Escriba su nombre completo con apellidos: ')
    direccion=input('Escriba su dirección')
    telefono=int(input('Telefono: '))
    email=input('Escriba su email: ')
    estudiantes[carnet]={'cursos':cursos_matriculados,'Nombre':nombre,'Direccion':direccion,'Telefono':telefono,'Email':email}
    print(estudiantes)
def menu():
    print('''
    1.-> Crear un nuevo estudiante o un nuevo curso para un estudiante.
    2.-> Leer la información de todos los estudiantes, de un estudiante en particular o los cursos de
    un estudiante específico.
    3.-> Actualice la información de un estudiante (nombre, dirección, teléfono o email) o la nota de
    un curso para un estudiante.
    4.-> Elimine la información de un curso para un estudiante o aún un estudiante completo.
    5.-> El programa debe tener un menú que se ejecute hasta que se seleccione la opción de terminar.
    La información debe ser persistente, por lo que no dependerá de una ejecución específica, sino que
    se mantendrá en archivos que se puedan reutilizar. Se recomienda el uso de archivos shelve
    6.-> Salir.''')
opcion1 = 0
menu()
while opcion1!=6:
    menu()
    opcion1=int(input('Elige una opcion: '))
    if opcion1==1:
        print('''
        1.-> Crear un nuevo estudiante
        2.-> Crear un nuevo curso
        3.-> Salir
        ''')
        opcion2=int(input('Elige una opcion: '))
        if opcion2==1:
            crear_ficha()
        elif opcion2==2:
            crear_nuevo_curso()
        elif opcion2==3:
            pass
        else:
            print('Esa opcion es incorrecta')
    elif opcion1==2:
        print('''
        1.-> Leer información de todos los estudiantes
        2.-> Leer informacion de un estudiante
        3.-> Leer los cursos de un estudiante
        4.-> Salir
        ''')
        opcion2=int(input('Elige una opcion: '))
        if opcion2==1:
            leer_estudiantes()
        elif opcion2==2:
            lee_un_estudiante()
        elif opcion2==3:
            lee_curso_estudiante()
        elif opcion2==4:
            pass
        else:
            print('Esa opcion es incorrecta')
    elif opcion1==3:
        print('''
        1.-> Actualice la información de un estudiante (nombre, dirección, teléfono o email)
        2.-> Actualice nota de un curso para un estudiante.
        3.-> Salir
        ''')
        opcion2=int(input('Elige una opcion: '))
        if opcion2==1:
            actualiza_informacion()
        elif opcion2==2:
            actualiza_curso()
        elif opcion2==3:
            pass
        else:
            print('Esa opcion es incorrecta')
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