コード例 #1
0
ファイル: controller.py プロジェクト: dlmanrique/Lab3_202010
def loadBooks(catalog, sep=','):
    """
    Carga los libros del archivo.  Por cada libro se toman sus autores y por 
    cada uno de ellos, se crea en la lista de autores, a dicho autor y una
    referencia al libro que se esta procesando.
    """
    t1_start = process_time()  #tiempo inicial
    booksfile = cf.data_dir + 'GoodReads/books.csv'
    dialect = csv.excel()
    dialect.delimiter = sep
    with open(booksfile, encoding="utf-8") as csvfile:
        spamreader = csv.DictReader(csvfile, dialect=dialect)
        for row in spamreader:
            # Se adiciona el libro a la lista de libros
            model.addBookList(catalog, row)
            # Se adiciona el libro al mapa de libros (key=title)
            model.addBookMap(catalog, row)
            # Se obtienen los autores del libro
            authors = row['authors'].split(",")
            # Cada autor, se crea en la lista de autores del catalogo, y se
            # adiciona un libro en la lista de dicho autor (apuntador al libro)
            for author in authors:
                model.addAuthor(catalog, author.strip(), row)
    t1_stop = process_time()  #tiempo final
    print("Tiempo de ejecución carga libros:", t1_stop - t1_start, " segundos")
コード例 #2
0
ファイル: controller.py プロジェクト: nCaicedo789/Lab4_202010
def loadBooks(catalog, sep=','):
    """
    Carga los libros del archivo.  Por cada libro se toman sus autores y por 
    cada uno de ellos, se crea un arbol de autores, a dicho autor y una
    referencia al libro que se esta procesando.
    """
    t1_start = process_time()  #tiempo inicial
    booksfile = cf.data_dir + 'GoodReads/books.csv'
    dialect = csv.excel()
    dialect.delimiter = sep
    with open(booksfile, encoding="utf-8-sig") as csvfile:
        spamreader = csv.DictReader(csvfile, dialect=dialect)
        for row in spamreader:
            # Se adiciona el libro a la lista de libros
            model.addBookList(catalog, row)
            # Se adiciona el libro al mapa de libros (key=title)
            model.addBookMap(catalog, row)
    t1_stop = process_time()  #tiempo final
    print("Tiempo de ejecución carga libros:", t1_stop - t1_start, " segundos")