输入某书店的书籍名称,进价,售价,销量,计算毛利率(售价—进价)/售价,输出毛利率最高的书籍

24 阅读3分钟
  1. 实际应用场景描述

场景

某连锁书店每天销售大量图书,管理层希望快速了解:

  • 哪本书的毛利率最高
  • 哪些书利润贡献大
  • 优化进货策略与定价

痛点

  • 手工计算繁琐,容易出错
  • 数据量大时Excel处理慢
  • 无法实时反馈给采购和销售团队
  1. 核心逻辑讲解

  2. 输入:书籍名称、进价、售价、销量

  3. 计算:毛利率 = (售价 - 进价) / 售价

  4. 存储:用列表或字典保存每本书的数据

  5. 查找:遍历所有记录,找到毛利率最高的书籍

  6. 输出:打印结果

  7. 代码模块化设计

我们将代码分为:

"data_input.py":数据输入模块

"calculation.py":计算毛利率模块

"analysis.py":分析最高毛利率模块

"main.py":主程序入口

3.1 "data_input.py"

data_input.py

def get_book_data(): """ 模拟从POS系统或数据库获取书籍销售数据 返回: list of dict, 每个dict包含 name, cost_price, sell_price, sales_volume """ return [ {"name": "Python编程入门", "cost_price": 30, "sell_price": 50, "sales_volume": 100}, {"name": "大数据原理", "cost_price": 45, "sell_price": 60, "sales_volume": 80}, {"name": "算法导论", "cost_price": 60, "sell_price": 80, "sales_volume": 50}, {"name": "人工智能基础", "cost_price": 40, "sell_price": 55, "sales_volume": 120} ]

3.2 "calculation.py"

calculation.py

def calculate_profit_margin(data): """ 计算每本书的毛利率 :param data: list of dict :return: list of dict with profit_margin added """ for book in data: if book["sell_price"] > 0: book["profit_margin"] = (book["sell_price"] - book["cost_price"]) / book["sell_price"] else: book["profit_margin"] = 0 # 避免除零错误 return data

3.3 "analysis.py"

analysis.py

def find_highest_profit_margin(data): """ 找出毛利率最高的书籍 :param data: list of dict with profit_margin field :return: tuple (book_name, profit_margin) """ highest = max(data, key=lambda x: x["profit_margin"]) return highest["name"], highest["profit_margin"]

3.4 "main.py"

main.py

from data_input import get_book_data from calculation import calculate_profit_margin from analysis import find_highest_profit_margin

def main(): print("=== 书店毛利率分析系统 ===") # 获取数据 book_data = get_book_data()

# 计算毛利率
book_data_with_margin = calculate_profit_margin(book_data)

# 输出详细数据
print("\n各书籍销售详情:")
for book in book_data_with_margin:
    print(f"书名: {book['name']}, 进价: {book['cost_price']}, "
          f"售价: {book['sell_price']}, 销量: {book['sales_volume']}, "
          f"毛利率: {book['profit_margin']:.2%}")

# 找出最高毛利率的书籍
top_book, top_margin = find_highest_profit_margin(book_data_with_margin)
print(f"\n🎯 毛利率最高的书籍是: 《{top_book}》, 毛利率: {top_margin:.2%}")

if name == "main": main()

  1. README.md

书店毛利率分析系统

项目简介

基于Python的快速毛利率分析工具,适用于书店销售数据的利润分析。

功能

  • 输入书籍名称、进价、售价、销量
  • 计算毛利率
  • 输出毛利率最高的书籍

安装与使用

  1. 确保已安装 Python 3.7+
  2. 克隆本项目
  3. 运行 python main.py

模块说明

  • data_input.py: 数据输入
  • calculation.py: 计算逻辑
  • analysis.py: 数据分析
  • main.py: 主程序

适用场景

  • 书店销售数据分析
  • 采购策略优化
  • 利润最大化决策
  1. 使用说明

  2. 将代码保存为对应文件名

  3. 在终端执行: python main.py

  4. 查看控制台输出的各书籍销售详情及最高毛利率书籍

  5. 核心知识点卡片

知识点 说明 列表与字典 存储结构化数据 函数封装 提高代码复用性 异常处理 避免除零错误 max()与lambda 高效查找最大值 模块化设计 便于维护与扩展 百分比格式化 ":.2%" 直接显示百分比 大数据预处理 真实场景可用Pandas/Spark处理海量数据

  1. 总结

本项目通过模块化Python编程,解决了书店销售数据分析的痛点:

  • 实时性:秒级输出结果
  • 准确性:避免人工计算错误
  • 可扩展性:可接入数据库或API实现动态数据更新

未来可结合大数据技术(如Hadoop/Spark)处理全国门店数据,并利用机器学习预测畅销书与最优定价,实现真正的智能图书零售管理。

如果你愿意,可以把这个系统升级成带图形化界面的桌面应用(Tkinter/PyQt)或者Web版(Flask + ECharts可视化),让数据更直观。

利用AI高效解决实际问题,如果你觉得这个工具好用,欢迎关注我!