Foros del Web » Programando para Internet » Python »

Apoyo con revisión de inventario

Estas en el tema de Apoyo con revisión de inventario en el foro de Python en Foros del Web. Saludos, El siguiente para solicitar un pequeño apoyo con este codigo, el cual se basa en que se quiere comprar lo indicado en la lista ...
  #1 (permalink)  
Antiguo 23/07/2015, 14:17
 
Fecha de Ingreso: febrero-2010
Mensajes: 19
Antigüedad: 14 años, 2 meses
Puntos: 0
Pregunta Apoyo con revisión de inventario

Saludos,

El siguiente para solicitar un pequeño apoyo con este codigo, el cual se basa en que se quiere comprar lo indicado en la lista compras (9 items), y el cual tambien posee otras otras listas de precios e inventario.

El codigo se ejecuta sin problemas, pero en la última parte lo cual vendría a ser el punto 6 (ver negrillas), veo que solo la función itera para el primer item el cual es leche, y no itera para las demás.

Es decir, para la función "calcular_factura": solo itera el argumento leche y no para los otros items que estan dentro de la lista "compras".

Voy a colocar el output y en negrillas lo que está mal del codigo.

código:

compras = {'banana' : 8, 'naranja' : 31, 'manzana' : 6, 'pollo': 6, 'carne' : 397, 'queso' : 399, 'pimenton' : 248, 'jamon' : 99, 'leche' : 243 }

cosas = 0

for renglon in compras:
print ("Ud va a comprar", compras[renglon], 'unidades de', renglon)
cosas = cosas + 1
print ('En la cesta lleva', cosas, "items")
print ("")
print ("")

precios = {"banana": 4, "manzana": 2, "naranja": 1.5, "pera": 3, 'pimenton' : 250, 'carne' : 400, 'pollo' : 420, 'jamon' : 800, 'queso' : 620, 'leche' : 100}

inventario = {"banana" : 8, "manzana" : 20, "naranja" : 32, "pera" : 15, 'pimenton' : 249, 'carne' : 398, 'pollo' : 422, 'jamon' : 100, 'queso' : 400, 'leche' : 600}

def calcular_factura(comida):
cosas = 0
total = 0
for renglon in comida:
if inventario[renglon] > 0:

print ("")
print ('1) El inventario inicial de', renglon, 'es de:', inventario[renglon],'unidades')
print ("")

total = total + (comida[renglon]) * (precios[renglon])
inventario[renglon] = inventario[renglon] - comida[renglon]
print ('2) Tras la venta, el nuevo inventario de', renglon, 'es de:', inventario[renglon], 'unidades')
print ("")

print ('3) Se compraron', comida[renglon], 'unidades de', renglon, 'a',precios[renglon],'a $ c/u', 'lo que es un total de:', comida[renglon] * precios[renglon],'$')
print ("")
total = 0
cosas = cosas + 1
total = total + (comida[renglon]) * (precios[renglon])
print ('4) Se han comprado', cosas,'rubros.', 'La cuenta a pagar va en $:', total)
print ("")

return total

factura = calcular_factura(compras)
print
print ("5) Total Acumulado a pagar $:",factura)
print ("")
print ('6) El nuevo inventario despues de las compras es:', inventario)



Output:

Ud va a comprar 243 unidades de leche
En la cesta lleva 1 items


Ud va a comprar 31 unidades de naranja
En la cesta lleva 2 items


Ud va a comprar 6 unidades de manzana
En la cesta lleva 3 items


Ud va a comprar 399 unidades de queso
En la cesta lleva 4 items


Ud va a comprar 248 unidades de pimenton
En la cesta lleva 5 items


Ud va a comprar 397 unidades de carne
En la cesta lleva 6 items


Ud va a comprar 99 unidades de jamon
En la cesta lleva 7 items


Ud va a comprar 8 unidades de banana
En la cesta lleva 8 items


Ud va a comprar 6 unidades de pollo
En la cesta lleva 9 items



1) El inventario inicial de leche es de: 600 unidades

2) Tras la venta, el nuevo inventario de leche es de: 357 unidades

3) Se compraron 243 unidades de leche a 100 a $ c/u lo que es un total de: 24300 $

4) Se han comprado 1 rubros. La cuenta a pagar va en $: 24300

5) Total Acumulado a pagar $: 0

*** 6) El nuevo inventario despues de las compras es: {'leche': 357, 'naranja': 32, 'manzana': 20, 'queso': 400, 'pimenton': 249, 'carne': 398, 'jamon': 100, 'pera': 15, 'banana': 8, 'pollo': 422}

*** En esta última parte, solo calculó el item "leche", los que tambien estan incluidos en la lista "compras" como son: banana, naranja, manzana, pollo, carne, queso, pimenton, jamon, no se ejecutaron en la iteración.

¿Que le falta a este código para realizar dicho analisis?...

Gracias de antemano...
  #2 (permalink)  
Antiguo 23/07/2015, 14:42
 
Fecha de Ingreso: julio-2015
Ubicación: Lima - San Miguel
Mensajes: 13
Antigüedad: 8 años, 9 meses
Puntos: 1
Respuesta: Apoyo con revisión de inventario

Pase por aca solo de curiosidad y ya veo que no hay respuestas ni las abra, doctor tienes que poner solo el problema en concreto.
  #3 (permalink)  
Antiguo 23/07/2015, 15:34
 
Fecha de Ingreso: febrero-2010
Mensajes: 19
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Apoyo con revisión de inventario

Gracias por el feedback, estoy empezando python, y no sé como hacer la pregunta más concreta, si me pueden asesorar en como puedo lograr que la iteración tome los demás valores.

Con esto me refiero a:

compras = {'banana' : 8, 'naranja' : 31, 'manzana' : 6, 'pollo': 6, 'carne' : 397, 'queso' : 399, 'pimenton' : 248, 'jamon' : 99, 'leche' : 243 }

Me toma solo el argumento leche de esa lista... Mientras que los demás valores de la lista como son: banana, naranja, manzana, etc no los toma, esta es mi duda dentro de este tema.

Quise mostrar el código completo, para que puedan ver lo que yo veo.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:50.