模拟菜单方式,利用python函数的方法实现商品进销存管理,其中要体现成本核算功能(成本核算采用移动加权平均法),具体要求:
1)商品进货管理
2)商品销售管理
3)商品库存管理
4)商品统计查询
给你个sample code,没有做太多验证,实现基本逻辑。
基本代码如下,使用了 Python 的字典数据类型来保存商品的信息,并采用了移动加权平均法来进行成本核算。
import sys
# 商品信息保存在一个字典中,key 是商品名,value 是一个包含成本和数量的列表
inventory = {}
# 商品进货管理
def purchase():
name = input("请输入商品名: ")
quantity = int(input("请输入商品数量: "))
cost = float(input("请输入商品成本: "))
if name in inventory:
total_cost = inventory[name][0] * inventory[name][1]
total_cost += cost * quantity
total_quantity = inventory[name][1] + quantity
average_cost = total_cost / total_quantity
inventory[name] = [average_cost, total_quantity]
else:
inventory[name] = [cost, quantity]
# 商品销售管理
def sell():
name = input("请输入商品名: ")
quantity = int(input("请输入商品数量: "))
if name not in inventory or inventory[name][1] < quantity:
print("库存不足")
else:
inventory[name][1] -= quantity
# 商品库存管理
def stock():
name = input("请输入商品名: ")
if name not in inventory:
print("商品不存在")
else:
print("库存数量: ", inventory[name][1])
# 商品统计查询
def stats():
for name, info in inventory.items():
print("商品名: ", name)
print("平均成本: ", info[0])
print("库存数量: ", info[1])
print("---------------------")
def main():
while True:
print("1. 商品进货")
print("2. 商品销售")
print("3. 商品库存查询")
print("4. 商品统计查询")
print("5. 退出")
option = int(input("请选择操作: "))
if option == 1:
purchase()
elif option == 2:
sell()
elif option == 3:
stock()
elif option == 4:
stats()
elif option == 5:
sys.exit()
else:
print("无效选项,请重新选择")
if __name__ == "__main__":
main()
如果有帮助,请点击一下采纳该答案~谢谢
参考博客:http://python.jobbole.com/86465/
https://www.cnblogs.com/fireporsche/p/7813961.html
https://www.cnblogs.com/sun-haiyu/p/7096918.html
https://blog.csdn.net/miantian180/article/details/79300062
存储采用本地txt存储吗