def menu():
    """
    Inicia el menu del programa.
    """
    catalog = ct.initCatalog()
    while True:
        printMenu()
        inputs = input('Seleccione una opción para continuar\n')
        #opcion1
        if inputs == '1':
            print('caragndo datos...\n')
            ct.addElementsmapsDetails(catalog, file_details, file_cast)
            print('La longitud de los datos es:\"',
                  ct.sizeList(catalog['Data']['details']),
                  '\" elementos cargados.\n')

        #opcion2
        elif inputs == '2':
            company = input('Ingrese el nombre de la productora de cine:\n')
            answer = ct.getCompany(catalog, company)
            if answer != None:
                (movies, avg, size) = ct.getCompany(catalog, company)
                print('La compañia \"', company,
                      '\" tiene un total de peliculas: ', str(size))
                print('\nLas peliculas son:\n')
                printlist(movies)
                print('\nSus peliculas tienen un voto promedio de: \"',
                      str(avg), '\".\n')
            else:
                print('\nLlave no es valida\n')
        #opcion3
        elif inputs == '3':
            director = input('Ingrese el nombre del director:\n')
            answer = ct.getDirector(catalog, director)
            if answer != None:
                (movies, size, avg) = ct.getDirector(catalog, director)
                print('El director \"', director,
                      '\" tiene un total de peliculas: ', str(size))
                print('\nLas peliculas son:\n')
                printlist(movies)
                print('\nSus peliculas tienen un voto promedio de: \"',
                      str(avg), '\".\n')
            else:
                print('\nLlave no es valida\n')
        #opcion4
        elif inputs == '4':
            actor = input('Ingrese el nombre del actor:\n')
            answer = ct.getActor(catalog, actor)
            if answer != None:
                (movies, size, avg, max_director) = ct.getActor(catalog, actor)
                print('El actor \"', actor,
                      '\" actuo en un total de peliculas: ', str(size))
                print('\nLas peliculas son:\n')
                printlist(movies)
                print('\nSus peliculas tienen un voto promedio de: \"',
                      str(avg), '\"')
                print('\nEl director con el que mas colaboro es: ',
                      (max_director), '\n')
            else:
                print('\nLlave no es valida\n')
        #opcion5
        elif inputs == '5':
            genre = input('Ingrese el genero de interes:\n')
            answer = ct.getGenre(catalog, genre)
            if answer != None:
                (movies, avg, size) = answer
                print('\nLas peliculas son:\n')
                printlist(movies)
                print('\nLa votacion promedio de las peliculas fue: \"',
                      str(avg), '\".\n')
                print('El genero: \"', genre, '\"cuenta con un total de: ',
                      size, 'peliculas.\n')
            else:
                print('\nLa llave no es valida\n')
        #opcion 6
        elif inputs == '6':
            country = input("Ingrese el país de interés:\n")
            country_list = ct.getCountry(catalog, country)
            if country_list != None:
                (movies) = country_list
                print("el país seleccionado es:")
                print(country)
                print("las peliculas y su respectiva información")
                printlist6(movies)
            else:
                print('\nLlave no es valida\n')

        elif inputs == '0':
            sys.exit(0)

        #opcion no valida
        else:
            print('La opcion: \"', inputs, '\" no es correcta.\n')
예제 #2
0
            print('Rangos inválidos, inténtelo de nuevo')
        else:
            answer = controller.relaxingMusic(catalog, min_instrumentalness, max_instrumentalness, min_tempo, max_tempo)

            print('\n \n++++++ Req No. 3 results... ++++++')
            print('Tempo is between', min_tempo, 'and', max_tempo)
            print('Instrumentalness is between', min_instrumentalness, 'and', max_instrumentalness)
            print('Total of unique tracks in events:', answer[1])
            printTracks2(answer[0])
        
    elif int(inputs[0]) == 6:
        genres = input("Genero(s) a buscar (separelos con un espacio): ").split()

        all_valid = True
        for genre in genres: 
            verf_genre = controller.getGenre(catalog, genre)
            
            if verf_genre is None:
                new_genre = int(input('Desea crear un nuevo género para ' + genre + '?\n 1 - Si \n 2 - No \n>'))
                if new_genre == 1:
                    min_tempo = float(input('Tempo minimo del género: '))
                    max_tempo = float(input('Tempo máximo del género: '))
                    controller.newGenre(catalog, genre, min_tempo, max_tempo)
                else:
                    print('El género', genre, 'no es válido, intentelo de nuevo.')
                    all_valid = False

        if all_valid:
            answer = controller.genreStudy(catalog, genres)

            print('\n \n++++++ Req No. 4 results... ++++++')
예제 #3
0
        )
        genreTuple = genreTuple.split(",")
        genreTuple = tuple(genreTuple)
        for genrePos in genreTuple:
            genrePos = int(genrePos)
            if genrePos <= 0 or genrePos > 10:
                print("Ingrese una numero valido")
            elif genrePos != 10:

                delta_time = -1.0
                delta_memory = -1.0
                tracemalloc.start()
                start_time = getTime()
                start_memory = getMemory()

                tempoRange = controller.getGenre(genreList, genrePos)
                genre = tempoRange[2]
                minTempo = tempoRange[0]
                maxTempo = tempoRange[1]
                total = controller.getCharByRange(catalog, "tempo", minTempo,
                                                  maxTempo)
                artists = controller.getArtists(catalog, minTempo, maxTempo,
                                                "tempo")
                print("Para " + str(genre) + " el tempo esta entre " +
                      str(minTempo) + " y " + str(maxTempo) + " BPM...")
                print(
                    "\nEl numero de reproducciones para este genero fueron: " +
                    str(total[0]))
                print("\nEl numero de artistas para este genero fueron: " +
                      str(artists[0]))
                print("\n Los diez primeros artistas son")
예제 #4
0
        print("Tiempo de ejecución requerimiento 3 :",t1_stop-t1_start," segundos")  
 
    elif int(inputs[0])==5:
        
        ActorName = input("Nombre del director a buscar: ")
        t1_start = tt.time() #tiempo inicial
        actor = controller.AllmoviesActor(catalog, ActorName)
        if actor:
            print("Peliculas del Actor", ActorName,":",lt.size(actor['ActorMovies']))
            print("Promedio de Votación: ",(actor['sum_average_rating']/lt.size(actor['ActorMovies'])))
            print("El director que más lo ha dirigido es", actor["dir"])
            printMovies(actor)
        else:
            print("Director no encontrado")  
        t1_stop = tt.time() #tiempo final
        print("Tiempo de ejecución requerimiento 4 :",t1_stop-t1_start," segundos") 
    elif int(inputs[0])==6:
        genreName= input ("Ingrese el nombre del género a buscar: ")
        t1_start = tt.time() #tiempo inicial
        genre = controller.getGenre(catalog, genreName)
        if genre:
            print("El número de películas por género: ", genreName ,":", lt.size(genre['movies']))
            print("Promedio de Votación: ",(genre['sum_average_rating']/lt.size(genre['movies'])))
        else:
            print("Género no encontrado")
        t1_stop = tt.time() #tiempo final
        print("Tiempo de ejecución requerimiento 5 :",t1_stop-t1_start," segundos") 
        
    else:
        sys.exit(0)
sys.exit(0)