Esempio n. 1
0
def costo_camion(filename):
    '''
    Calcula el costo total (cajones*precio) de un camión
    '''
    camion = informe.leer_camion(filename)

    return camion.precio_total()
Esempio n. 2
0
def main():
    print(f"{'Inicio del enunciado' : ^60}")
    peras = Lote("Pera", 100, 490.1)
    print(peras)
    print(f"{'Fin del enunciado' : ^60}")
    camion = informe.leer_camion("Data/camion.csv")
    print(camion)
Esempio n. 3
0
def ticker(archivo_camion, archivo_data, formato='txt'):
    rows = parsear_datos(vigilar(archivo_data))
    camion = leer_camion(archivo_camion)
    rows = filtrar_datos(rows, camion)
    formateador = formato_tabla.crear_formateador(formato)
    formateador.encabezado(['Nombre', 'Precio', 'Volumen'])
    for row in rows:
        row = list(row.values())
        formateador.fila(row)
Esempio n. 4
0
def ticker(camion_file, log_file, fmt):

    formateador = crear_formateador(fmt)
    camion = informe.leer_camion('Data/camion.csv')
    formateador.encabezado(['nombre', 'precio', 'volumen'])  #seteo headers
    filas = parsear_datos(vigilar('Data/mercadolog.csv'))
    filas = filtrar_datos(filas, camion)
    for fila in filas:
        formateador.fila(str(v) for v in fila.values())  #seteo filas
def costo_camion(nombre_archivo):
    '''
    Calcula y devuelve el costo de cargar 
    un camión a partir de un archivo con 
    la cantidad de cajones y su precio. 
    Utiliza informe_funciones.leer_camion().
    '''
    camion = leer_camion(nombre_archivo)
    return camion.precio_total()
Esempio n. 6
0
def main(argv):
    """
    Computa el precio total del camion
    """
    if len(sys.argv) != 2:
        raise SystemExit(f'Uso adecuado: {sys.argv[0]} ' 'path:archivo_camion')
    camion = informe.leer_camion(open(argv[1], encoding='utf8').readlines())
    total = sum([(x['precio']) * (x['cajones']) for x in camion])

    return total
Esempio n. 7
0
def ticker(camion_file, log_file, fmt):
    '''
    Imprime por pantalla en el formato deseado
    '''
    camion = informe.leer_camion(camion_file)
    filas = parsear_datos(vigilar(log_file), types = [str, str, str])
    filas = filtrar_datos (filas, camion)
    formateador = formato_tabla.crear_formateador(fmt)
    formateador.encabezado(['nombre', 'precio', 'volumen'])
    while True:
        for fila in filas:
           formateador.fila(fila.values())
Esempio n. 8
0
def ticker(camion_file, log_file, fmt):
    # Elige formato
    camion = informe.leer_camion(camion_file)
    filas = parsear_datos(vigilar(log_file))
    # filas = filtrar_datos (filas, camion)
    filas = (
        fila for fila in filas if fila['name'] in camion
    )  # Expresión generadora para obtener los datos que se encuentren en camion
    formateador = formato_tabla.crear_formateador(fmt)
    formateador.encabezado(['nombre', 'precio', 'volumen'])
    for fila in filas:
        formateador.fila(fila.values())
Esempio n. 9
0
def main():
    import informe

    camion = informe.leer_camion("Data/camion.csv")

    for line in vigilar("Data/mercadolog.csv"):
        fields = line.split(",")
        nombre = fields[0].strip('"')
        precio = float(fields[1])
        volumen = int(fields[2])

        if nombre in camion:
            print(f"{nombre:>10s} {precio:>10.2f} {volumen:>10d}")
Esempio n. 10
0
def costo_camion(file_name):
    # Variables
    costo = 0
    rows = informe.leer_camion(file_name)

    # Imprimo datos y, a la vez, calculo precio de cajones
    for i, row in enumerate(rows, start=1):
        try:
            Ncajones = row.cajones
            Precio = row.precio
            costo += Ncajones * Precio
        except ValueError:  # Si faltan datos, tirame un warning
            print(f'Fila {i}: No se puede interpretar: {row}')
    # Retorno con resultado
    return (costo)
Esempio n. 11
0
def ticker(camion_file, log_file, fmt):
    fmtter = crear_formateador(fmt)
    headers = ['Nombre', 'Precio', 'Volumen']
    camion = leer_camion(camion_file)
    lines = vigilar(log_file)
    rows = parsear_datos(lines)
    rows = (row for row in rows if row['nombre'] in camion)
    fmtter.encabezado(headers)
    for row in rows:
        fmtter.fila(row.values())


# if __name__ == '__main__':
#     camion = leer_camion('Data/camion.csv')
#     lines = vigilar('Data/mercadolog.csv')
#     rows = parsear_datos(lines)
#     rows = (row for row in rows if row['nombre'] in camion)
#     for row in rows:
#         print(row)

# ticker('Data/camion.csv', 'Data/mercadolog.csv', 'txt')
Esempio n. 12
0
# vigilante.py
import os
import time


def vigilar(filename):
    f = open(filename, encoding='UTF-8')
    f.seek(0, os.SEEK_END)  # Mover el índice 0 posiciones desde el EOF
    while True:
        line = f.readline()
        if line == '':
            time.sleep(0.5)  # Esperar un rato y
            continue  # vuelve al comienzo del while
        yield line


if __name__ == '__main__':
    import informe

    camion = informe.leer_camion('Data/camion.csv')

    for line in vigilar('Data/mercadolog.csv'):
        fields = line.split(',')
        nombre = fields[0].strip('"')
        precio = float(fields[1])
        volumen = int(fields[2])

        if nombre in camion:
            print(f'{nombre:>10s} {precio:>10.2f} {volumen:>10d}')
Esempio n. 13
0
def costo_camion(filename):
    '''
    Calcula el costo total (cajones*precio) de un camión
    '''
    camion = informe.leer_camion(filename)
    return sum([s['cajones'] * s['precio'] for s in camion])
Esempio n. 14
0
def costo_camion(filename):
    '''
    Computa el precio total (cantidad * precio) de un archivo camion
    '''
    camion = informe.leer_camion(filename)
    return camion.precio_total()
Esempio n. 15
0
# Dani Suarez - [email protected]
# Ejercicio 9.7: Cambios de precio de un camion

import os
import time

from informe import leer_camion

def vigilar(filename):
    f = open('Data/mercadolog.csv')
    f.seek(0, os.SEEK_END)   # Mover el índice 0 posiciones desde el EOF
    
    while True:
        line = f.readline()
        if line == '':
            time.sleep(0.5)
            continue
        yield line


if __name__ == '__main__':

    camion = leer_camion('Data/camion.csv')

    for line in vigilar('Data/mercadolog.csv'):
        fields = line.split(',')
        nombre = fields[0].strip('"')
        precio = float(fields[1])
        volumen = int(fields[2])
        if nombre in camion:
            print(f'{nombre:>10s} {precio:>10.2f} {volumen:>10d}')
Esempio n. 16
0
# -*- coding: utf-8 -*-
"""
Created on Fri Aug 14 20:29:19 2020

@author: Diego
"""
from informe import leer_camion
from collections import Counter

camion = [('Pera', 100, 490.1), ('Naranja', 50, 91.1), ('Caqui', 150, 83.44),
          ('Naranja', 100, 45.23), ('Pera', 75, 572.45), ('Lima', 50, 23.15)]
total_cajones = Counter()
for nombre, n_cajones, precio in camion:
    total_cajones[nombre] += n_cajones

camion = leer_camion('Data/camion.csv')
tenencias = Counter()
for s in camion:
    tenencias[s['nombre']] += int(s['cajones'])

# Las 3 frutas con más cajones
tenencias.most_common(3)

camion2 = leer_camion('Data/camion2.csv')
tenencias2 = Counter()
for s in camion2:
    tenencias2[s['nombre']] += s['cajones']
Esempio n. 17
0
def fun_costo_camion(archivo):
    costo = 0
    data = informe.leer_camion(archivo)  #Acá no hago ningún cambio
    for i, row in enumerate(data):
        costo += int(row["cajones"]) * float(row["precio"])  #Y bue, reemplazo
    return costo