Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
153 changes: 153 additions & 0 deletions Statistics
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@

def least_sold(sales):

freq = {}

for sale in sales:
id_ = sale['id_']
freq[id_] = freq.get(id_, 0) + 1

min_ = float('inf')
min_id_ = " "

for prod_id_, count in freq.items():
if count <= min_:
min_ = count
min_id_ = prod_id_

return min_id_


def most_sold(sales):

freq = {}

for sale in sales:
id_ = sale['id_']
freq[id_] = freq.get(id_, 0) + 1

max_ = 0
max_id_ = " "

for prod_id_, count in freq.items():
if count >= max_:
max_ = count
max_id_ = prod_id_

return max_id_


def most_common_hour(sales):
freq = {}

for sale in sales:
date = sale['date']
hour = date.hour
freq[hour] = freq.get(hour, 0) + 1

max_ = 0
max_hour_ = " "

for hour, count in freq.items():
if count >= max_:
max_ = count
max_hour_ = hour

return max_hour_


def most_common_day(sales):
freq = {}

for sale in sales:
date = sale['date']
day = date.day
freq[day] = freq.get(day, 0) + 1

max_ = 0
max_day_ = " "

for day, count in freq.items():
if count >= max_:
max_ = count
max_day_ = day

return max_day_


def max_num_sales(sales):
freq = {}

for sale in sales:
id_ = sale['id_']
freq[id_] += freq.get(id_, 0) + sale['quantity']

max_ = 0
max_id_ = ' '

for prod_id_, count in freq.items():
if count >= max_:
max_ = count
max_id_ = prod_id_

return max_id_ + ':' + max_


def min_num_sales(sales):
freq = {}

for sale in sales:
id_ = sale['id_']
freq[id_] += freq.get(id_, 0) + sale['quantity']

min_ = float('inf')
min_id_ = ' '

for prod_id_, count in freq.items():
if count <= min_:
min_ = count
min_id_ = prod_id_

return min_id_ + ':' + min_


def reorder(id_, reorder, inventory, product_reorder):

product_reorder[id_] = reorder

if inventory.get(id_) <= product_reorder.get(id_):
print('You should order more items of this product, press 6
and follow instructions')


def total_spent(purchases)

spent_product = {}

for purchase in purchases:
price = purchase['price_purchase_']
id_ = purchase['id_']
spent_product[id_] = spent_product.get(id_, 0) + price

return spent_product


def total_gained(sales)

gained_product = {}

for sale in sales:
price = sale['price_sale_']
id_ = sale['id_']
gained_product[id_] = gained_product.get(id_, 0) + price

return gained_product

def total_profit(gained_product, spent_product):

profit_product = {}

for id_ in gained_product:
profit_product[id_] = gained_product[id_] - spent_product.get(id_, 0) + 0

return profit_product