def agrega_producto(nombre, cantidad, precio):
    """
    Agrega un producto al archivo productos.csv proporcionado por el
    usuario desde la línea de comandos NOMBRE, CANTIDAD y PRECIO.
    """
    producto = Producto(nombre, cantidad, precio)
    guarda_producto(producto, NA_PRODUCTOS)
Exemple #2
0
def main(argv):
    """ Función principal del script """

    # Se valida que se proporcionen 3 parámetros
    if len(argv) == 3:
        # Tenemos un producto
        nombre = argv[0]
        # Se valida que el 2do argumento sea entero
        try:
            cantidad = int(argv[1])
        except ValueError:
            print("Error: la cantidad tiene que ser entero!")
            sys.exit(1)
        # Se valida que el 3er argumento sea decimal
        try:
            precio = float(argv[2])
        except ValueError:
            print("Error: el precio tiene que ser decimal")
            sys.exit(2)
    else:
        print("Error: sintaxis incorrecta!")
        print("""
Sintaxis:
    agrega-producto NOMBRE CANTIDAD PRECIO

        """)
        sys.exit(3)

    producto = Producto(nombre, cantidad, precio)
    guarda_producto(producto, NA_PRODUCTOS)
def lee_producto():
    """
    Lee un producto desde la entrada estándar y regresa un objeto
    de tipo Producto
    """
    nombre = input("Nombre del producto: ")
    cantidad = lee_entero("Cantidad [1]:", 1)
    precio = lee_decimal("Precio:")

    return Producto(nombre, cantidad, precio)
Exemple #4
0
def agrega_producto(nombre, cantidad, precio):
    """
    Agrega un producto al archivo productos.csv proporcionado por el
    usuario desde la línea de comandos NOMBRE, CANTIDAD y PRECIO.
    """
    if os.path.exists(NA_PRODUCTOS):
        lista = obtiene_productos_csv(NA_PRODUCTOS)
    else:
        lista = []
    producto = Producto(len(lista) + 1, nombre, cantidad, precio)

    guarda_producto(producto, NA_PRODUCTOS)
def obtiene_productos_csv(nomarch):
    """
    Regresa la lista de productos donde cada elemento es de tipo Producto
    leídos desde el archivo nomarch
    """
    productos = []
    with open(nomarch) as fcsv:
        csv_reader = csv.reader(fcsv)
        for fila in csv_reader:
            producto = Producto(fila[0], int(fila[1]), float(fila[2]))
            productos.append(producto)

    return productos