Python代码实现数学藏品抢购系统

本代码实现了一个简单的数学藏品抢购系统,用户可以根据商品列表选择要购买的数学藏品,并进行模拟支付和库存更新。

# 导入库
import time

# 定义数学藏品商品类
class MathCollection:
    def __init__(self, name, price, stock):
        self.name = name   # 商品名称
        self.price = price  # 商品价格
        self.stock = stock  # 商品库存

# 初始化数学藏品商品列表
math_collections = [
    MathCollection('勾股定理证明书', 999, 10),
    MathCollection('黄金分割尺', 299, 20),
    MathCollection('圆周率计算器', 599, 15),
]

# 定义抢购函数
def buy_math_collection(index, num):
    # 判断商品是否存在
    if index >= len(math_collections):
        print('商品不存在')
        return False

    # 判断商品库存是否充足
    collection = math_collections[index]
    if collection.stock < num:
        print('商品库存不足')
        return False

    # 计算总价
    total_price = collection.price * num

    # 提示用户确认购买
    print(f'您将购买{collection.name} x {num},总价为{total_price}元,请确认是否购买?(Y/N)')
    answer = input()

    # 根据用户选择进行购买或取消
    if answer == 'Y':
        # 模拟支付过程
        print('正在支付中,请稍等...')
        time.sleep(2)

        # 更新商品库存
        collection.stock -= num

        # 提示购买成功
        print('购买成功!')
        return True
    else:
        print('已取消购买')
        return False

# 测试
if __name__ == '__main__':
    # 打印商品列表
    print('数学藏品商品列表:')
    for i, collection in enumerate(math_collections):
        print(f'{i + 1}. {collection.name}(库存:{collection.stock},价格:{collection.price}元)')

    # 用户输入选择的商品和数量
    print('请输入要购买的商品编号和数量,用空格隔开:')
    index, num = map(int, input().split())

    # 进行抢购
    buy_math_collection(index - 1, num)

使用方法:

  1. 运行代码
  2. 输入要购买的商品编号和数量,用空格隔开(例如:2 3 表示购买第二个商品,数量为3)
  3. 程序会提示确认购买,输入 Y 表示确认购买,输入其他字符表示取消购买
  4. 程序会模拟支付过程,支付成功后更新商品库存,并提示购买成功。如果商品不存在或库存不足,程序会提示相应的信息。
Python代码实现数学藏品抢购系统

原文地址: https://www.cveoy.top/t/topic/lXck 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录