Python - diccionarios/lista de compras

 
Vista:

diccionarios/lista de compras

Publicado por ivan (26 intervenciones) el 14/06/2023 00:20:30
Desde ya gracias a todo el que mira este ejercicio. Estoy trabado en un varias cuestiones. Estoy hace poco iniciándome en programación. Estoy con diccionarios. Tengo una lista de diccionario llamado boletas = [{'fecha_compra' : '29-05-22','precio' : 12000,'productos' : {'Chocolate': 1,'Mantequilla': 1,'Huevos': 12,'Pan' : 1}},{'fecha_compra' : '31-05-22':2400,'productos' : {'Pan': 1, 'Leche' : 2} },{'fecha_compra' : '01-06-22','precio' : 3000,'productos' : {'Mantequilla': 2, 'Azucar' : 1}}] tengo que crear una función precio_mes(boletas) y retornar un diccionario{'05-22' : 14400,'06-22' : 3000,}...o sea que suma los gastos cuando son mas de uno en un mes determinado y retorna el mes con el gasto total de ese mes...

Esto es lo que yo intente hacer ... pero mi resultado luego de ir identificando la llave y su value ....pero me quedan 3 diccionarios y no se como unificar sumar los gastos de un mismo mes...
for k in boletas:
fechas_a_saber= k[('fecha_compra')]
plata_gastada_este_mes= k[('precio')]
los_datos_que_quiero=fechas_a_saber[3:] ,plata_gastada_este_mes
nuevo_dict = dict(zip(los_datos_que_quiero[0:], los_datos_que_quiero[1:]))
print(nuevo_dict)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Francisco Javier
Val: 249
Ha aumentado su posición en 29 puestos en Python (en relación al último mes)
Gráfica de Python

diccionarios/lista de compras

Publicado por Francisco Javier (313 intervenciones) el 19/06/2023 19:19:02
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import datetime
boletas = [{'fecha_compra' : '29-05-22','precio' : 12000,'productos' : {'Chocolate': 1,'Mantequilla': 1,'Huevos': 12,'Pan' : 1}},
           {'fecha_compra' : '31-05-22', 'precio' : 2400,'productos' : {'Pan': 1, 'Leche' : 2} },
           {'fecha_compra' : '01-06-22','precio' : 3000,'productos' : {'Mantequilla': 2, 'Azucar' : 1}}
          ]
 
total = {}
 
for boleta in boletas:
    fecha_compra = datetime.datetime.strptime(boleta['fecha_compra'], '%d-%m-%y')
    mes = fecha_compra.strftime('%m-%Y')
    precio = boleta['precio']
 
    if mes in total:
        total[mes] += precio
    else:
        total[mes] = precio
 
print(total)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar